Daniel Krol
Senior Software Developer
Download PDF
dan@danielkrol.com
Values
Clean code, Clean data, Clear team communication.
Skills
- Python
- Go
- Node.js
- TypeScript
- Haskell
- Django
- Flask
- PostgreSQL
- Angular
- Ansible
- SaltStack
- Docker
- AWS
- Kafka
- Ubuntu/Debian
- QubesOS
- OSX
- Test Driven Development
- Functional Programming
- WebRTC
- Blockchain
- WebSockets
- APNS
-
Work History
- LBRY - Blockchain-based media platform
- Part-time Software Engineer
- Oct 2021-Nov 2022, Manchester, NH
Non-custodial wallet sync service
Open source web service in golang to synchronize a user's LBRY cryptocurrency wallet across multiple devices without access to the user's secrets. Defined client behavior to use a single password to encrypt the wallet and authenticate with the sync service.
- Various Contracting/Freelancing
- Apr 2020-Mar 2023
See Contracting Below
- Mix.com - Curation-based content recommendation
- 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.
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) - Activity and sleep tracking
- Backend Engineer
- Apr 2015-Nov 2016, San Francisco, CA
Development/maintenance for API service
Member of API team for fitness tracking watch. Features, bug fixes, deployment, and configuration changes. Developed with Python/Flask, 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) - Online STEM challenges
- Senior Engineer
- Jul 2011-Nov 2014, Chicago, IL / San Francisco, CA
Ajax View framework (brilliant.org)
Implemented a view framework on top of Django targeting old browsers. Facilitated reuse of code between partial and full page loads. Transparent fallback to non-javascript.
Practice Section (brilliant.org)
Implemented the backend of the initial version of the Practice Section on brilliant.org.
Python Client Library for FeeFighters Samurai API (alltuition.com)
Analytics Integration (brilliant.org)
Improvements to loan consolidation rate prediction system (alltuition.com)
Conducted Mechanical Turk based research project (alltuition.com)
- Oracle (formerly Stellent) - View legacy office file formats
- Software Engineer
- Feb 2006-Sep 2010, Chicago IL
Spreadsheet file parsers for Outside In
Maintenance, optimization, and feature implementation in C.
- Contracting
- ElectionBettingOdds.com - October 2020-October 2022 (on and off)
Add features to static site generator, aggregating data from from multiple prediction markets
Sandstorm.io (open source project) - Oct 2021-Mar 2023 (on and off)
Upgrade the Sandstorm.io package for Etherpad-lite
Etherpad-lite (open source project) - April 2020-July 2020
Bug fixes and features for Etherpad, a self-hosted collaborative word processor.
Datamaglia (Django development) - Dec 2014-Feb 2015
Voyager Tech (Django development) - May 2011-Jul 2011
Shelfworthy (Django development) - Apr 2010-Oct 2010
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
- Share-A-Map - Self-hosted open source web map
- https://github.com/orblivion/sandstorm-share-a-map
Self-hosted OpenStreetMap web app for trip planning. Built for the Sandstorm.io platform.
- Other Open Source
- https://github.com/orblivion/me
- Argument Clinic
- Experimental structured debate website (now defunct). Had few, but enthusiastic users.
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
- Juggling
- Biking
- OpenStreetMap Editing
-
May 26 2023 -- Daniel Krol -- dan@danielkrol.com