David Calloway
Verified Expert in Engineering
Software Developer
David is a man fascinated by both human and computer languages. In his spare time, he's equally likely to be rereading the Bash manual pages, perusing his German dictionary (Duden), or listening to podcasts when he does the inevitable menial tasks required by life. His favorite programming languages all feature functions as first-class citizens.
Portfolio
Experience
Availability
Preferred Environment
Linux, Emacs, Email, Git, Bash
The most amazing...
...service I've provided is to keep all production services running through major stack migrations, ultimately transitioning to a microservice-based platform.
Work Experience
Software Developer
JACOB Elektronik GmbH
- Developed a fully-tested, high-level AMQP client library for broad use within the company, which reduced boilerplate code and increased reliability for message-backed microservices.
- Contributed to multiple open-source libraries, including fixing a race condition in the most popular AMQP library for Go.
- Shared accumulated knowledge regularly in the form of versioned documents during the process of evaluation and developing solutions.
- Provided assistance to our team in designing backward-compatible services to progress toward long-term goals without downtime.
Head of Back-end Development
Bornemann AG
- Created a system to anonymize and export tracking data of approximately 20,000 vehicles daily for licensed third parties.
- Updated several public and internal APIs to support authentication via a newly-developed centralized authentication and authorization server.
- Developed module for exporting historical vehicle data with cryptographic signatures, allowing export origin verification beyond normal in-system data lifetime.
- Transferred over 15,000 legacy event notification rules into under 1000 simplified rules for new event notification systems by factoring parameter sets from their Cartesian products. This avoided having customers re-key notification parameters.
Head of Software Development
Bornemann AG
- Led development of our flagship product, Infleet Online, serving thousands of customers to track thousands of vehicles. This customer-facing product included live vehicle tracking, event handling, presentation of historical data, and more.
- Developed an internal management tool for supporting operations, including dispatching inventory to customers, remote GPS tracker communications, and generating aggregated reports for business purposes.
- Assisted in integrating various third-party tools with our products based on customer needs.
- Built a complete REST API accessible by customers, giving full programmatic access to all back-end features.
- Created custom niche solutions for specific customers based on business needs and budget.
Front-end Developer
Bornemann AG
- Converted existing front-end prototype away from using a custom mixed-language PHP and JavaScript function to Ajax and JavaScript-only calls using a library.
- Converted a multi-page map-based tracking application to a single-page application, reducing the company's licensed map usage and allowing customers to see various mapped data without switching pages.
- Assisted the back-end team in developing a REST API for the front-end work, allowing more loose coupling of these separate concerns.
Junior Developer
Appalachian Technologies
- Crafted weather graphs and visualizations with loving attention to minor details.
- Performed minor maintenance for small business websites.
- Provided support for dial-up internet service customers.
- Performed antivirus, software tuning, and computer repair.
Experience
Infleet Online
https://bornemann.net/gps-fahrzeugortung/For historical data, it is possible to visualize and replay tracking data and generate various reports based on the collected data. Report generation was available on-demand in the browser or periodically by configuration to send as email attachments.
Various event handling tools were available, most commonly notifications of specific events. Event handling included vehicle data collection, such as ignition status, speed, acceleration, and location data like GPS geofencing or changes of mobile network operators.
All functionality from the web interface was made available via a REST API, including registering event handlers as HTTP calls.
FirmUp
One interesting aspect of this project was incorporating an existing database of available device types matched to possible firmware upgrades. Available upgrades were deployed in an automated rate-limited fashion to avoid the possibility of overwhelming our support team.
ConFix
One interesting aspect of this project was its flexible design that could handle new device models via a set of parameter conversions. Using these parameter conversions allowed support staff to generate universally-applicable configurations based on the desired behavior rather than specific parameters for a particular model.
A further useful feature of the project was the live updates of running configuration tasks, which allowed support staff quick feedback.
This project was split into two services that communicated with each other (and further services) for better integration with additional service software.
Education
Master's Degree in Computer Science
Hochshule Trier - Trier, Germany
Bachelor's Degree in Spanish and German
Appalachian State University - Boone, NC, USA
High School Diploma in Mathematics
NC School of Science and Mathematics - Durham, NC, USA
Certifications
Sun Certified MySQL 5.0 Developer
Sun Microsystems
Zend Certified Engineer
Zend Technologies, Inc.
Skills
Libraries/APIs
Node.js, jQuery, jQuery UI, Google Maps, AMQP, Moment.js, Socket.IO, MooTools, YUI
Tools
RabbitMQ, Emacs, Postfix, NGINX, Mongoose, Jira, Git, Mercurial, Subversion (SVN), DataTables, YUI Compressor, GitLab, GitLab CI/CD, Terraform, Amazon Elastic Container Service (Amazon ECS)
Languages
JavaScript, HTML, Bash, CSS, Java, SQL, PHP, HTML5, Go, PHP 5, Java 9, Python
Frameworks
Express.js, Django
Storage
JSON, MySQL, MongoDB, MariaDB, MySQLi, PostGIS, PostgreSQL, SQLite, Microsoft SQL Server
Platforms
Linux, Android, Embedded Linux, Debian Linux, Amazon Web Services (AWS), Docker
Paradigms
REST
Other
German, Ajax, Spanish, Email, Linux Server Administration, API Integration, APIs, Spanish-English Translation, Computer Science, Mathematical Modeling, DOM, RHEL, WebSockets, SMS Gateways, Kannel, Bluebird, CORS, CI/CD Pipelines, ECS
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring