Kragen Javier Sitaker

Buenos Aires, Argentina * kragen@canonical.org

This document is available in HTML: http://canonical.org/~kragen/resume and in Spanish.

Objective

A software development or devops position where I can provide mentorship to and receive mentorship from the best programmers I can find, shipping useful software.

Wide Range of Software Development Expertise

Twenty years of experience developing software professionally. Native English speaker; fluent in Spanish; basic reading knowledge of French and Portuguese. Pioneered Comet and AJAX at KnowNow in 2000. Has written hundreds of thousands of lines of code in JavaScript, Python, Perl, C, C++, Java, SQL, assembly, and many other languages, to solve problems in areas including multispectral remote-sensing imagery, real-time securities trading, network management, social web applications, OLAP, interactive art installations, and scientific data analysis, running on diverse platforms including cross-browser HTML5, Linux, and Win32, as well as Firefox and Chrome extensions. Experienced with object-oriented programming and functional programming paradigms. Experience with Extreme Programming, less rigorous agile processes such as Scrum, and even legacy waterfall-development lifecycles, in environments from a global consulting firm to cooperatives to startups on a shoestring.

Experience

Recent personal projects

Most of my recent personal projects are on GitHub. Wrote Aikidraw, an HTML5 <canvas> sketchpad. Composed some Bytebeat, which is a genre of computationally minimal electronic music, and put it on Arduino. Wrote yamemex, a one-click bookmarking and annotation system as a Chrome extension. Hosted the first SuperHappyDevHouse in Buenos Aires in December 2011. Gave a talk on Using Python for interactive art installations at PyConAr 2011.

Satellogic

August 2017 to May 2018

Extended, maintained, and monitored the Python operational systems for Satellogic’s fleet of satellites, both on-orbit and on the ground, using PostgreSQL, Docker, Django, GitLab Continuous Integration instead of Jenkins, AMQP on RabbitMQ, ZeroMQ, InfluxDB, and Grafana. Extended and optimized the in-house network protocol suite used among the embedded ARM microcontrollers and other processors onboard the satellite, which runs over Ethernet, the CAN bus, and the radio link to groundstations. Analyzed performance and diagnosed incidents with Jupyter and Matplotlib.

Private financial trading system

July 2013 to May 2017

Developed an automated real-time financial trading system in Java (in the Eclipse IDE) and Python, on Ubuntu Linux on Amazon Web Services (AWS), in active collaboration with a highly technical remote client, on a local two-person team.

The system algorithmically sold and bought publicly-traded stocks and futures contracts using proprietary trading strategies, integrating data from the broker API, paid data provider APIs running under WINE, and screen-scraping of public web pages. (Typical security hold times were measured in hours to weeks; this is not HFT.)

Used Pandas, Numpy, Jupyter, and D3.js for data exploration and visualization.

Evaluated Cassandra and InfluxDB for use as time-series databases, but in the end we developed our own data stores.

Inaka Networks

November 2012 to December 2012

Worked on a short contract for an Inaka client doing development with Scala and Lift.

Cooperativa de trabajo quov.is

March 2012 to July 2012

Working on client projects for this Rails-focused informatics consulting cooperative, largely HTML/CSS frontend development using jQuery Mobile, Backbone, Rails, and SQL, using Git and Gerrit for code reviews.

Distributed Expertise, S.A.

February 2009 to July 2011

Founding an informatics consulting firm. Worked on client projects: KNX was a search engine for your social graph, implemented as an AJAX application with no server-side data storage, with backends using various social networking sites’ APIs (Facebook API, Twitter API, GMail API, etc.); client got acqui-hired by Google. Watchdog.net was an easy-to-use database of political information for use by voters.

These projects involved tools such as JavaScript, Python, PHP, web.py, OAuth, jQuery, and PostgreSQL, on Linux and Mac OS X. Other client projects during this time also used MySQL, Perl, Objective-C, Django, and Node.js.

Self-Funded Sabbatical

January 2006 to February 2009

Various personal projects: digitized the first edition of the Oxford English Dictionary. Traveled around United States, Canada, and seven South American countries. Learned Spanish. Co-authored Passpet, an anti-phishing password-management Firefox extension, and a peer-reviewed conference paper on it. Wrote several open-source programs: a fast native-code compiler written in the subset of Scheme that it compiles, a simple real-time 3D engine in DHTML (before WebGL existed), a simple music sequencer in Python, a system to use LEDs as light sensors on a microcontroller, and a full-text search engine using a novel index data structure. Participated in BarCamps in Buenos Aires and Palo Alto. Rebuilt an air-cooled Volkswagen engine.

CommerceNet

August 2004 to January 2006

With Mark Lentczner, Donovan Preston, and Jim Kingdon, helped design and implement Wheat, an experimental programming language designed for interactive web sites.

With Jesse Andrews, wrote WowBar, an open-source prototype Firefox sidebar and system for collaborative web-page annotation using a service-oriented architecture (SOA) with a common REST API. Users subscribed to annotation sources and published their own annotations as a source to which other users could subscribe. Other annotation sources included Technorati, Google PageRank, and Wikalong.

To track open WowBar tasks, designed and wrote wowbarbts, an open-source hybrid Wiki/database/bug-tracker web application.

Worked on numerous other smaller projects, including installing and administering MediaWiki; installing, administering, and writing new components in Java for Nutch; and co-authoring a CommerceNet technical report on the Nutch work with, among others, Doug Cutting, who went on to develop Hadoop as part of Nutch.

AirWave Wireless

September 2002 to August 2004

As part of a six-person Extreme Programming team, developed a network management appliance in Perl for large multi-vendor 802.11 networks. The user interface was in Apache mod_perl on Linux, while the backend used PostgreSQL, RRDtool, SNMP, and the Cisco CLI. We won considerable market share from entrenched competitors by responding to market and customer needs and enhancing the software much more quickly than they could.

All members of the team participated in every phase of the development lifecycle, including hiring, requirements gathering, high-level architecture, user-interface design, code design, coding, debugging, testing, benchmarking, maintenance, metrics, process improvement, and employee performance evaluation.

Freelance Programmer

September 2001 to September 2002

Developed data format conversion scripts and a low-end sales data OLAP system as web services.

Alpiri (seed-stage startup)

Programmer, August 2001 to September 2001

Maintained and enhanced full-stack web application including an RDF-like graph database built on MySQL in Perl, screen-scraping data inputs, and SOAP and AJAX frontends.

KnowNow

Software Engineer, June 2000 to July 2001

With other seed-stage employees at KnowNow, developed pioneering high-performance Comet frontend and backend software in Perl, C, and JavaScript; post-funding, wrote an event-driven Python version. Most of this software has been open-sourced as mod_pubsub.

ERIM International

Research Engineer, August 1997 to June 2000

C, C++, and Perl software development for hyperspectral data analysis, scientific data visualization, and GIS on Windows NT and Solaris. ERIM International is now part of General Dynamics.

Lexis-Nexis (via Keane, Inc.)

Consultant, May 1997 to August 1997

Worked on Y2K contract in C++ and Perl on platforms including Microsoft Windows and Unix.

TCSI Corporation (via Taos Mountain Software)

Configuration Management Engineer, February 1996 to March 1997

System and database administration and development and support of in-house source-control system, build system, and bug tracker.


This résumé is up-to-date as of 2018-07-12.

References available on request.