Daniel Krol
Senior Software Developer
Download PDF
dan@danielkrol.com
Values
Clean code, Clean data, Clear team communication.
Work History
- LBRY
- Part-time Software Engineer
- Oct 2021-Current, Manchester, NH
Develop Non-custodial wallet sync service
Created an open source web service, written in golang, to synchronize a user's LBRY cryptocurrency wallet across multiple devices without giving the clients access to the user's secrets. Account for encryption of the wallet and account access using the same password.
- Various Contracting/Freelancing
- Apr 2020-Current
See Contracting Below
- 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.
- Contracting
- ElectionBettingOdds.com - October 2020-October 2022
Add features to static site generator, Aggregating data from from multiple prediction markets
Sandstorm.io (open source project) - Oct 2021-Mar 2022
Upgrade the Sandstorm.io package for Etherpad-lite
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
Brilliant - October 2020-July 2021
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
- Django
- PostgreSQL
- Angular
- Ansible
- Docker
- AWS
- Ubuntu/Debian
- QubesOS
- OSX
- Test Driven Development
- Functional Programming
- WebRTC
- Blockchain
-
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
-
Dec 01 2022 -- Daniel Krol -- dan@danielkrol.com