Igor Naverniouk

Software Engineer / Technical Lead

abednego at gmail dot com
cell: (650)996-9735 (I prefer email)

Education

2005-2007
Ph.D. in Computer Science at the University of Toronto (unfinished), focusing on approximation algorithms and combinatorial auctions. Supervisor: Dr. Avner Magen.
2005
Master of Science in Computer Science from the University of British Columbia, specializing in stochastic algorithms for multiobjective optimization. Supervisor: Dr. Holger Hoos.
2003
Graduated from the University of British Columbia with a B.Sc. Combined Honours in Computer Science and Mathematics.

Experience

2007-now
Software Engineer / Tech Lead at Google, Inc. in Mountain View, California.
  • Android. Data collection and analytics infrastructure for Google's core apps (Search, Gmail, Calendar, Maps, Play Store, Google+, and others). I lead a medium-sized team of software engineers who work with petabytes of data from 1B+ users.
  • Google Commerce Platform. E-commerce solution for medium-to-large online retailers.
  • TV advertisement quality and auction. Designing new ad quality measures; applying machine learning models to problems in audience measurement, advertisement auctions and revenue/quality trade-offs.
  • Google Code Jam (20% time). Contest platform, problem preparation, spin-offs.
  • Other confidential projects.
Summer 2007
Software engineering intern at Google Inc. in Mountain View, California. Initial design and implementation of the Google Code Jam website.
Summer 2006
Research intern at Google Inc. in Mountain View, California. Machine learning for real-time natural language processing tasks for use in many Google products, including search and ad quality.
Summer 2005
Research assistant to Dr. John Buchanan at Electronic Arts Canada. Applying machine learning to game AI - making a game that learns strategies from expert players. This was a summer project with the goal of evaluating a number of techniques for learning strategies used by humans in a fighting game. My program was based on a neural network and was able to learn and imitate an expert player's strategy in real time.
2004-2005
Technical test marker (part time) for Business Objects (now part of SAP). Evaluating the coding section of the written technichal test used in the company's hiring process.
2003,2005
Course designer and instructor A fellow student and I designed and taught twice a Problem Solving course (CPSC490) in the Computer Science department of UBC, drawing on our experience in programming competitions.
2002-2005
Software Engineering Lead (part time) BioVires Solutions Inc.: Hep-CAT - a tool for Hepatitis C virus researchers to study RNA amino acid sequences, their alignment, phylogenic trees and 3D structures. Experience working on a large scale Java project and leading a small programming team.
2001-2002
Senior Undergraduate Teaching Assistant at UBC. Course: CPSC216. Experience preparing and teaching tutorials.

Achievements

2005
17th place team ACM International Collegiate Programming Competition World Finals in Shanghai (2nd place in North America).
2004
Site Champions and 1st place team ACM Regional International Collegiate Programming Competition (Pacific North-West region).
NSERC Post-Graduate Scholarship.
2003
4th place team ACM Regional International Collegiate Programming Competition (Pacific North-West region).
2002
Site Champions and 3rd place team ACM Regional International Collegiate Programming Competition (Pacific North-West region).
UBC Computer Science Terrific TA Award for CPSC216: Program Design and Datastructures.
2001
Site Champions and 6th place team ACM Regional International Collegiate Programming Competition (Pacific North-West region).

Hobbies

I regularly participate in and organize a number of programming competitions. As a result, I am familiar with a vast number of algorithmic problems from all areas of computer science. Among the thousands of people who participate in these competitions, I am consistently ranked in the top 50 worldwide. Frankly, I believe that these competitions have taught me more about computer science and programming than all of the university courses. The competitions I am referring to are TopCoder, ACM ICPC, Google Code Jam, Bytecode and others.