David Calloway, Developer in Woltersdorf, Germany
David is available for hire
Hire David

David Calloway

Verified Expert  in Engineering

Software Developer

Location
Woltersdorf, Germany
Toptal Member Since
June 21, 2022

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

JACOB Elektronik GmbH
Go, GitLab, GitLab CI/CD, CI/CD Pipelines, Terraform, ECS...
Bornemann AG
Java 9, Docker, Bash, Node.js, RabbitMQ, Postfix, PostgreSQL, MongoDB, Mongoose...
Bornemann AG
JavaScript, Node.js, RabbitMQ, MySQL, PHP, MySQLi, DOM, jQuery, jQuery UI...

Experience

Availability

Part-time

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

2023 - PRESENT
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.
Technologies: Go, GitLab, GitLab CI/CD, CI/CD Pipelines, Terraform, ECS, Amazon Elastic Container Service (Amazon ECS), Git

Head of Back-end Development

2016 - 2020
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.
Technologies: Java 9, Docker, Bash, Node.js, RabbitMQ, Postfix, PostgreSQL, MongoDB, Mongoose, JSON, PHP, APIs

Head of Software Development

2009 - 2015
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.
Technologies: JavaScript, Node.js, RabbitMQ, MySQL, PHP, MySQLi, DOM, jQuery, jQuery UI, Google Maps, PostGIS, PostgreSQL, Jira, MongoDB, MariaDB, RHEL, Debian Linux, SQLite, Git, Mercurial, Subversion (SVN), Django, DataTables, Microsoft SQL Server, WebSockets, Express.js, Postfix, Java, Linux Server Administration, API Integration, Amazon Web Services (AWS), SQL, NGINX, APIs

Front-end Developer

2007 - 2008
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.
Technologies: MySQL, jQuery, jQuery UI, MooTools, YUI, YUI Compressor, JavaScript, Ajax, PHP, APIs

Junior Developer

2006 - 2006
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.
Technologies: PHP, MySQL, HTML, CSS, SQL

Infleet Online

https://bornemann.net/gps-fahrzeugortung/
A live and historical vehicle and sensor tracking web application oriented toward small to medium businesses. Infleet provides live tracking on a map with additional tools for dispatch planning.

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

An over-the-air firmware updater application that applied upgrades to GPS tracking devices remotely, enabling new features and ensuring continued operations. I was the full-stack developer and maintainer for this project.

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

A Node.js-based application to prepare and apply device settings for GPS tracking devices. I was the full-stack developer and maintainer of this project, assisting our support staff's daily operations.

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.
2015 - 2021

Master's Degree in Computer Science

Hochshule Trier - Trier, Germany

2000 - 2005

Bachelor's Degree in Spanish and German

Appalachian State University - Boone, NC, USA

1996 - 1998

High School Diploma in Mathematics

NC School of Science and Mathematics - Durham, NC, USA

NOVEMBER 2006 - PRESENT

Sun Certified MySQL 5.0 Developer

Sun Microsystems

FEBRUARY 2006 - PRESENT

Zend Certified Engineer

Zend Technologies, Inc.

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

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring