3981 Alemany Blvd, Apt 201
San Francisco, CA 94132
|
David James
|
(650) 997-4533
james@cs.toronto.edu
|
|
Employment History |
|
Senior Software Engineer |
Alexa Internet |
Nov. 2006 - Present |
Crawl Engineering
- Increased Alexa's peak per-site crawl rate 100-fold by redesigning the URL scheduling algorithm,
allowing for expanded coverage of popular sites and products. C++
- Reduced the CPU time required to schedule a billion URLs for crawling by 90%. C++
- Trimmed disk space requirements for link graphs by 95% via compression, redundancy analysis and removal, and priority-ordered pruning. C++, Python
- Cut the cost of running the Alexa crawl system by 90%.
Webmaster Tools
- Created a tool to evaluate a website's search engine optimization score, and provide
suggestions for improving its rankings. C++, Python, PHP
- Designed algorithms for calculating a website's reputation relative to competitors
through aggregation of discoverability and crawlability metrics. C++, Python, PHP
- Developed software to help webmasters target ad campaigns at websites with
overlapping audiences. C++, Python, PHP
Toolbar Development
- Accelerated browser performance by upgrading the Alexa Firefox add-on to use asynchronous DNS resolution. Javascript, XPCOM
- Enhanced user experience by designing a method for translating HTTP specific error codes to meaningful explanations with suggestions for recovery. Javascript, XPCOM
|
Software Engineer |
CollabNet |
Jan. 2006 - Nov. 2006 |
- Reduced checkout times by 50-80% for large projects stored in CVS or Subversion. C
- Developed high-performance, high-concurrency web applications.
Java, JBoss, MySQL
|
Software Engineer |
Idee Inc. |
Fall 2005 |
- Setup software development team with a bug tracker,
an automated build bot, a Subversion repository, and a new
test suite.
|
NSERC Research Assistant |
University of Toronto |
Summers 2003 - 2005 |
- Developed new statistical machine-learning methods for extracting semantic knowledge about verbs from a corpus of on-line text. Perl, Matlab
- Created a web interface for visualizing syntactic knowledge about verbs. PHP, SQL
- Developed webcasting system which displays synchronized
transcripts with lecture content. C#, ASP.NET
|
Lead Programmer |
Nerdheaven |
Summers 1999 - 2000, 2002 |
- Created Perl E-Commerce Toolkit and presented it at the O'Reilly Open Source Convention.
|
Software Developer |
Starnix |
Summer 2001 |
- Created Linux and Windows desktop applications for network monitoring. C++, Perl
|
Education |
|
B.Sc. in Computer Science |
University of Toronto |
Sep. 2001 - Dec. 2005 |
- GPA: 3.61 (out of 4). Graduated with High Distinction as a Software Engineering specialist.
- Achieved top-ranked grades in Compilers and Interpreters (99%), Programming Languages (99%), Artificial Intelligence (95%), Modelling and Simulation (96%) and Databases (99%).
- Earned three national research awards, a Google Summer of Code grant,
and a scholarship.
|
Open Source Projects |
|
Summer of Code Mentor |
Google |
Summers 2006 - 2007 |
- Created simple, complete and automatic Python bindings for the Subversion APIs using
a modified ctypes code generator.
- Helped a student build a high-level Python interface for Subversion.
|
Full Committer |
Subversion Corp. |
Jun. 2005 - Present |
- Reduced the time required to run 'svn log' on a revision with
10,000 paths from 7 seconds to 0.2 seconds.
- Extended the Subversion API to support copying internal datastructures into
user-managed memory pools, allowing for user-friendly memory management in
the Python and Ruby bindings.
|