Links online at echonolan.net/resume/cv.html or via QR code
Open Source Experience
- October 2016 - June 2017
- Beescheduler. A single page web application to schedule goals using the goal tracking service Beeminder’s API. Personal project. Frontend using React, backend using Node.js and the Serverless Framework. Online at http://beescheduler.echonolan.net.
- June 2014 - October 2016
- Idris. A programming language with dependent types, implemented in Haskell. Many contributions including improvements to the dynamic linker, parser, build system, terminal support, continuous integration and documentation. Wrote bug reports and reduced others, helped people on mailing lists and Stack Overflow.
- January 2016 - June 2017
- December 2015 - August 2016
- AlanDeniseEricLauren. Personal project. An implementation of the ADEL algorithm for finding minimal subsets of a given input satisfying an arbitrary upward-closed property. Found a recent (2014) academic conference paper solving my problem and turned it into working, performant code. Released on Hackage.
- March 2016 - June 2016
- GHC Libraries. The built-in libraries for the flagship Haskell compiler. Fixed an especially hairy bug in the Windows networking functionality. The build tool Stack would hang intermittently when downloading dependencies. Traced it down to http-conduit, then to base. Submitted a patch to GHC which was merged May 19 2016. Submitted a workaround patch to the network library. Wrote a blog post describing the process.
- April 2015
- PIA-Forward. Personal project. Uses a simple REST API to set up port forwarding on the Private Internet Access VPN service. Was the subject of the “Haskell: The Bad Parts” talk mentioned above.
- Small changes to Cabal, Stack, the Selenium Docker images, Haskell’s network library and the offline debugging server for Serverless Framework. A mostly-complete BitTorrent client, Whiteout.
- June 2016 - July 2016
- Oregon Programming Languages Summer School. Two week intensive on the academic study of programming languages located at the University of Oregon. Topics included type theory, category theory, verification and programming language theory generally.
- March 2016 - June 2016
- Machine Learning Coursera Course. Taught by Andrew Ng of Stanford. Implemented linear regression, logistic regression, neural networks, clustering, and Support Vector Machines. Certificate.
- Computer science baccalaureate program (incomplete), Portland State University, Portland, Oregon, USA.
- 2017 - present
- Software Engineer. Signal Vine Inc., remote with myself in Portland, Oregon and the company headquartered in Alexandria, Virginia. Contributed to a two-way text messaging platform in the education technology space.
- 2008 - 2016
- Computer Support Technician. Joe Nolan DMD, West Linn, Oregon, USA. Provided general support in a small dental office.