Ken Ballentine, Developer in Syracuse, NY, United States
Ken is available for hire
Hire Ken

Ken Ballentine

Verified Expert  in Engineering

Embedded Systems Developer

Location
Syracuse, NY, United States
Toptal Member Since
November 18, 2015

Ken has been programming for over 15 years. He's thoroughly experienced in C and C++ and can quickly pick up new languages across many paradigms. He has professional experience at all levels of the software stack, and is extremely comfortable working on lower-level systems.

Portfolio

Equitable
Docker, Kubernetes, MySQL, Angular, JavaScript, Swing, Java
Skynet Healthcare Technologies, Inc.
MQTT, Bluetooth LE, Embedded Systems, C++
Microsoft Corporation
Knockout (Knockout.js), JavaScript, LDAP, Windows PowerShell, ASP.NET...

Experience

Availability

Part-time

Preferred Environment

Linux, Make, Subversion (SVN), Git

The most amazing...

...full-stack development I've done was for robotic systems (offline modelling, real-time control software, embedded programming, FPGA, hardware design).

Work Experience

Senior Software Engineer

2018 - 2019
Equitable
  • Worked on the employee benefits team to build a multi-tier web application and API to be used by AXA and third-party agents to manage insurance products and portfolios for individuals and corporations.
  • Led the effort to prepare the existing application, which was designed as microservices but manually deployed in-house, for cloud deployment to Azure's Kubernetes service.
  • Utilized modern web development and CI/CD techniques to build a progressive web app, a robust REST-compliant API, and to minimize DevOps load by automating deployments and releases.
Technologies: Docker, Kubernetes, MySQL, Angular, JavaScript, Swing, Java

Firmware Engineer

2017 - 2018
Skynet Healthcare Technologies, Inc.
  • Improved an existing product with updates to software stability and functionality.
  • Developed the firmware for a new BLE product from the ground up, including OTA updates.
  • Provided diagnostic guidance for a plethora of hardware and firmware related issues.
  • Developed support tools to help diagnose problems with an integrated RTLS system consisting of multiple embedded devices.
  • Served as a consultant for future product development and cross-platform integration opportunities in the assisted living technology space.
Technologies: MQTT, Bluetooth LE, Embedded Systems, C++

Software Development Engineer, Azure AD

2013 - 2014
Microsoft Corporation
  • Developed a web-based tool for updating catalog metadata in Azure's service catalog.
  • Helped maintain AAD PowerShell commandlets and install scripts.
  • Updated database schema and database interface layer for the object model required to support new business logic.
  • Developed and maintained unit and extended tests to ensure complete code coverage and service validation.
  • Tracked down bugs by analyzing error reports and audit logs from pre-production and live environments.
Technologies: Knockout (Knockout.js), JavaScript, LDAP, Windows PowerShell, ASP.NET, Windows Server, IIS, C#

Engineer

2010 - 2013
Critical Link, LLC
  • Developed camera control firmware for a new line-scan camera product.
  • Created a PC application in Qt to interact with a custom piece of industrial control hardware.
  • Worked on many data-acquisition applications, developing application-level software, DSP firmware, and FPGA designs.
  • Developed an iPhone application for a Bluetooth-enabled IoT device.
  • Optimized the power consumption of a sealed, always-on embedded device to achieve a 5-year lifespan.
Technologies: FPGA, Hardware, ARM Linux, Qt

On-demand System Administrator

2004 - 2009
SUNY Oswego Meteorology Department
  • Regularly rebuilt the department's industry-standard software packages for Linux.
  • Created control scripts and data processing tools in Bash, C, and FORTRAN to enable the automatic scheduling of weather model simulations.
  • When necessary, dived deep into the codebase of numerical models written in FORTRAN to diagnose run-time issues.
  • Created simple web applications to allow student participation in weather forecasting games.
  • Went on-site to deploy Linux lab environments.
Technologies: Python, Fortran, NFS, PHP, Apache, Linux

OBS_mic_dsp

https://github.com/kballen/OBS_mic_dsp
Plugin for popular Windows live-streaming application OBS to integrate microphone audio pre-processing. Uses the same COM component as Skype to provide de-noising, automatic gain, and echo cancellation.

Theorems for Free

http://kballentine.net/projects/theorems_for_free/
Implementation of Philip Wadler's paper, "Theorems for free" in Haskell. This was my final project in a university class on functional programming.

FPGA AES

http://kballentine.net/fun/fpga_crypto/
AES cipher implementation in VHDL.

Languages

C++, VHDL, C, Java, C#, JavaScript, PHP, Fortran, Python, SQL

Platforms

Linux, Win32, Kernel Programming, Windows Server, ARM Linux, Bluetooth LE, Kubernetes, Docker, JVM

Other

Embedded Systems, Device Drivers, IIS, LDAP, NFS, Hardware, FPGA, Cryptography

Frameworks

Knockout (Knockout.js), .NET, Boost, Qt, ASP.NET, Windows PowerShell, Swing, Angular, Express.js

Libraries/APIs

jQuery, Node.js, OpenSSL

Tools

Git, Subversion (SVN), Make, Apache, MQTT

Paradigms

Real-time Systems, Functional Programming

Storage

SQLite, MySQL

2010 - 2014

B.Sc. Degree in Computer Science

Rochester Institute of Technology - Rochester, NY, USA

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