Daniel Krol
Senior Software Developer
Download PDF
dan@danielkrol.com
Values
Clean code, Clean data, Clear team communication.
Work History
- Mix.com
- Platform Engineer
- Nov 2016-Sept 2019, San Francisco, CA
Member of API Services team
Development/bug fixes in Go and Node.js services for content recommendation application. Interfaced with recommendation engine, and coordinated with Recommendation Service team on architecture decisions. Encouraged code organization and leveraging type system where possible.
New version of recommended content categorization
Coordinated with Recommendation Service team to roll out new version of topic categorization system for recommended content. Included establishing initial set of topics and creating a plan to roll out future topics.
Feedback sent to Recommendation Service
Added hooks to user events on recommended content which sent feedback with context back to the Recommendation Service.
- Basis (an Intel company)
- Backend Engineer
- Apr 2015-Nov 2016, San Francisco, CA
Development/maintenance for API service
On API team for fitness tracking watch. Features, bug fixes, deployment, and configuration changes. Developed in Python, deployed using SaltStack.
Transitioning between two sleep data streams
Transitioning between two versions of the user's sleep data streams, while avoiding interruptions in both individual sleep events and daily aggregates.
APNS (Apple push notifications) Configuration
Debugging problems with APNS service and Python library. Configuration changes to APNS deployment on cluster, including installing new certs.
- Brilliant (formerly Alltuition)
- Senior Engineer
- Jul 2011-Nov 2014, Chicago, IL / San Francisco, CA
Ajax View framework (brilliant.org)
Implemented a view framework on top of Django. Facilitated reuse of code between partial and full page loads. Transparent fallback to non-javascript (targeted users with potentially old browsers).
Practice Section (brilliant.org)
Implemented the backend of the initial version of the Practice Section on brilliant.org.
FeeFighters Samurai Python API library (alltuition.com)
Implemented initial Python client library for the FeeFighters Samurai API. My contributions are best seen here: https://git.io/vgH2u
Analytics Integration (brilliant.org)
Initial analytics data schema. Added ability to trigger analytics events from Python, which ran as a background task, or rendered in the browser as JavaScript calls to various 3rd party services.
Improvements to loan consolidation rate prediction system (alltuition.com)
Conducted Mechanical Turk based research project (alltuition.com)
- Oracle (formerly Stellent)
- Software Engineer
- Feb 2006-Sep 2010, Chicago IL
Spreadsheet file parsers for Outside In
Bug fixes, optimization, general maintenance, and feature implementation, in C. Responded to customer support requests, worked with display engine team, focused on maintaining legacy functionality.
- Web Development Contracting
- ElectionBettingOdds.com - October 2020-current
Add features to static site generator, Aggregating data from from multiple prediction markets
Etherpad-lite (open source project) - April 2020-July 2020
Various bug fixes and features developed for Etherpad, a self-hosted collaborative word processor
Datamaglia - Dec 2014-Feb 2015
Bare-bones user dashboard in Django for datamaglia.com
Voyager Tech - May 2011-Jul 2011
Django admin customization for memprotein.org
Shelfworthy - Apr 2015-Oct 2010
Django development for shelfworthy.com
Reuseit - Nov 2009-Dec 2009 / Feb 2011-Jul 2011
PHP/SQL development, feature/bug fixes for site, store and shipping systems
- Other Contracting
- Brilliant - October 2020-current
Planning and writing interactive online computer science course material
Projects
- Feed Getter:
- github.com/orblivion/feedGetter
An RSS aggregator in Haskell.
- Haskell Synth:
- github.com/orblivion/Haskell-Synth
A sound and music synthesizer in Haskell.
- Argument Clinic
- An experimental debate site (now defunct). Created with Django. Attempted to structure debates with subdebate and definition constructs. Had few, but enthusiastic users.
Skills
- Python
- Go
- JavaScript
- Haskell
- Scala
- C/C++
- Erlang
- Django
- Flask
- Apache/Nginx
- MongoDB/Mongoengine
- PostgreSQL
- Heroku
- AWS
- Cassandra
- SaltStack
- Ansible
- Docker
- Angular
- Ubuntu/Debian
- OSX
- Gentoo
- Arch Linux
- Test Driven Development
- Functional Programming
- WebRTC
-
Education
- Illinois Institute Of Technology
- B.S., Computer Engineering
- 2001-2005, Chicago, IL
- Miscellaneous Courses
- Coursera: Functional Programming Principles in Scala
- Course Record: www.coursera.org/records/yjD8PGuY9cGQpE5g
- Erlang Camp 2014
- A weekend-long crash course in Erlang and OTP, which took place in Austin Texas
Misc
- Personal Programming Projects
- Collecting Old Video Games
- Juggling
- Biking
- Free and Open Source Software
- OpenStreetMap Editing
-
Sep 20 2021 -- Daniel Krol -- dan@danielkrol.com