Heikki Toivonen

Santa Clara, California, USA
Email: My first name at heikkitoivonen.net
Technical Skills:

Languages and standards: Python, C, C++, JavaScript, Unix shell scripts, Perl, make, SQL, NoSQL, Java, CGI, Web Services, XML, XHTML, DOM, CSS, PKI, SSL/TLS, REST, JSON, AJAX

Frameworks and applications: Flask, Pylons, Werkzeug, CherryPy, Django, SQLAlchemy, Twisted, jQuery, dojo, wxPython, MySQL, SQLite, Memcached, Cassandra, Apache, Nginx, HAProxy

Tools and OSes: AWS, CDK, Docker, Eclipse, Git, Subversion, CVS, Jenkins, Jira, Bugzilla, Trac, Linux, Windows, Macintosh, Android

Personal Projects:

Web Applications

2008-2016

Wrote office resource finder web application originally using the Werkzeug Python web application framework, SQLAlchemy, SQLite, Mako Templates and jQuery. Later ported to Django using Django database layer and templates. Also wrote other web application using the Pylons and Turbogears2 web application frameworks together with Paste, Beaker, Paginate, Routes, prototype, scriptaculous, and FormEncode libraries. Deployed as an WSGI application using FastCGI and MySQL. Unit tested with sqlite in-memory database.

Mobile Applications

2007-2013

Wrote Caltrain schedule applications for desktop, online and Google Android platform using Python, HTML, CSS, Javascript and Java. Wrote various other Android applications in Java.

M2Crypto

Maintainer

2004-2013

Maintainer of M2Crypto, the most complete wrapper of OpenSSL for Python. Over 80% test coverage.

Professional Experience:

Amazon Lab126, Sunnyvale, CA

Senior Software Development Engineer - Tools

2016-present

Lab126 is an Amazon subsidiary working mainly on device software and devices like Echo and FireTV.

  • Designed improvements to development processes that affected hundreds of developers, project managers and other stakeholders. Designed and implemented related tooling changes.
  • Designed, developed and maintained an internal tool using AWS Aurora, SQLAlchemy, Flask and Python.
  • Implemented a public serveless API with AWS Cloud Development Kit (CDK) and TypeScript, using S3, API Gateway and Cloudfront.
  • Maintained a Ruby on Rails internal application.
  • Participated in hiring loops.
  • Mentored more junior engineers, including interns.

Quixey, Inc., Mountain View, CA

API Engineer

2014-2016

Mobile search. Switched to devops role in early 2015.

  • Scaled and optimized Python Flask application.
  • Maintained and automated Jenkins test and deployment pipelines for hundreds of git repositories and applications.
  • Researched and implemented tools and best practices for Docker-based deployments.

Egnyte, Inc., Mountain View, CA

Senior Engineer

2010-2014

Egnyte provides cloud storage and sharing services for businesses ("Dropbox for businesses"). Worked as the technical lead for sync, using mostly Python.

  • Scaled the sync system to tens of thousands of simultaneously syncing clients against three data centers, where many customers were syncing over 10 million file datasets of several terabytes in size.
  • Optimized sync algorithm, API, and implementation on client and server side to meet and exceed the speed of competitors.
  • Designed and implemented event polling sync using Cassandra NoSQL storage, which brought sync latency from 15 minutes to one minute.
  • Designed various sync related APIs and algorithms for other engineers to implement, reviewed code and mentored other engineers, QA and support.
  • Implemented UI design in a CherryPy application using Cheetah templates.

SpikeSource, Inc., Mountain View, CA

Senior Staff Engineer

2008-2010

SpikeSource helped companies build, test, package, distribute and maintain software products. One of the engineering leads.

  • Created, extended and maintained Pylons, CherryPy, CakePHP and Java applications.
  • Designed RESTful API for a machine provisioning system, and implemented client side library for it in Python.
  • Improved development processes and tools for the whole engineering department, improving application quality and developer productivity; reviewed most Python code written in the company to follow best Python and engineering practices.

Open Source Applications Foundation, San Francisco, CA

Development Manager

2003-2008

Open Source Applications Foundation (OSAF) is a non-profit organization behind Chandler, a personal information manager (PIM) written mostly in Python. Primary security engineer, and manager of small distributed team of 1-3 engineers and interns.

  • Added cryptographic services, including SSL/TLS support and password manager, to Chandler.
  • Created and maintained continuously running Chandler performance tests and reporting infrastructure. Profiled code to find and optimize badly performing parts. Used Valgrind and other tools to find and fix memory leaks.
  • Acted both as manager of build/release and QA teams as well as the build/release engineer, debugging build problems and creating releases.
  • Hired engineers and participated in creating position descriptions, doing phone and face-to-face interviews.

Netscape Communications Corporation, Mountain View, CA

Technical Manager, Software Development

2002-2003

Senior Software Engineer

2000-2002

Contributed to the team that created Netscape 6.0 - 7.1 and the Mozilla browser. Owner of the XML module. Drove security work of Netscape browsers, and managed global team of 6-10 engineers and interns who worked on web standards and browser security. Consistently exceeded expectations.

  • Improved browser security by organizing security reviews and using tools to find and eliminate security vulnerabilities and motivating engineers to the importance of security issues during a time when the company's future was uncertain.
  • Improved design and code quality by acting as a reviewer, which required rapidly analyzing thousands of lines of code written by other engineers and providing constructive feedback on how to make it better.
  • Implemented XPointer, FIXptr and simple XLink, brought XHTML support on par with HTML, improved XMLHttpRequest object support from proof-of-concept state to one of the most useful features in the browser.

Various Companies, Finland

Various Roles

1993-2000

Designed and implemented customized Mozilla-based applications using XUL, JavaScript, C++ and SQL according to strict requirements, specifications and schedules. Designed and implemented several programs and parts of programs producing Web and Windows applications using languages such as ANSI C, Perl and Visual Basic. Teaching assistant for a university C/C++ Programming course.

Education:

MS (Information Technology), University of Jyväskylä, Finland, 2000.

Computer Science Diploma, University of Kent at Canterbury, UK.