James Kilts :: Senior Software Developer

Two-for-One:
Senior Software Developer
+ Very Junior Graphic Designer

Technologies Experience Contact

How I can help your company

Adaptable to any new language or platform, my value add is experience bringing large-scale projects to market, particularly using a Minimum Viable Product approach.

Some of my favorite technologies:
C# / .NET 8
Just plain C
NodeJS
PostgreSQL
Some other great technologies that I've used:
  • .NET (.Net 8, ASP.NET, XUnit, LINQ, WinForms, IronPython, Classic Framework 4.8)
  • JavaScript (NodeJS, Vue, React, etc.)
  • Cloud Deployment (Azure, AWS, Heroku, CloudFlare)
  • RESTful Microservices
  • SQL (SQL Server w/ Stored Procs [TSQL], SSAS [MDX/cube], PostgreSQL)
  • Document storage (CosmosDB)
  • In-memory key/value databases (Redis)
  • Shell Scripting (Bash, Batch, PowerShell)
  • Networking (TCP Sockets, UDP, WebSockets)
  • Web Servers (IIS)
  • Version Control (GIT, SVN)
  • Python
  • PHP
  • Java
  • C++ (STL, Templates)
  • C (Embedded Systems)
  • Embedded Windows Drivers
  • Embedded Linux Drivers
Some not-so-great technologies that I've worked with:
  • Visual Basic
  • Visual C++ (MFC, COM, ATL)
  • Other SQL (MySQL... although it's much better now than it was 15 years ago)
  • Other Version Control (CVS, TFS, SourceSafe)
See Experience

Experience

Senior Software Engineer II
  • Developed microservices and user interfaces to support cloud-based Desktop-as-a-Service, primarily using C#, but with a trivial amount of C, Rust, and Go
  • Utilized Azure for hosting Azure Cloud Services and Service Fabric microservices
  • Utilized CosmosDB, Azure Table Storage, and Redis for persistance and caching.
  • Assisted with government certification efforts: code changes, documentation, and compliance demonstrations
  • Updated some services to store secrets using HashiCorp Vault for compliance
  • Customized a load testing tool (vegeta) to help investigate and improve performance
  • Helped update some services to allow for geo failover
  • Worked with CI/CD (Jenkins) configuration, in particular to run integration tests for fully automated environment end-to-end tests
  • Helped push inititives to migrate existing systems to .NET 6 (starting with library updates to .Net Standard 2.0)
  • Part of rotating on-call schedule to monitor and troubleshoot issues with systems.
Senior Software Engineer
  • Developed server applications and user interfaces for a number of different companies using C#, IronPython, Javascript, and HTML.
  • Developed a CRM system in .NET Core 3.0 to handle scalability and customization needs
  • Handled integration with many 3rd party vendors and off-the-shelf APIs (Google Maps, Twilio, MailChimp, Salesforce, Bing, etc.)
  • Automated data collection, rollups, and "authoritative analysis" from a large number of sources, often from free-form text, and sometimes with conflicting data
  • Utilized MS SQL Server for data storage with heavy use of stored procedures and multi-tiered processing for scalability and real-time reporting.
  • Designed and developed scalable, dynamically updatable systems for dealing with large volumes of network traffic, including sensitive data requiring PCI-compliance.
  • Assisted with the implementation of a system which has handled 100,000+ active connections per hour.
  • Implemented a State Machine Editor in HTML/Javascript/C#/SQL for use by less technical business users to administer business workflows.
Embedded Software Engineer Consultant
  • Worked primary with Spectrum Design Solutions, Inc. to develop software for a wide variety of platforms, including embedded systems for low-powered mobile and wireless devices.
  • Worked with an international team (Singapore and London) to modify an existing bond trading framework to support US bonds, written in Visual C++/COM for server communication, Sybase SQL for RDMS, and C#/VB.net for UI components.
  • Utilized a variety of embedded platforms including: Windows CE 5.0 and 6.0, .NET Compact Framework, Embedded Linux, uClinux, Net+OS (ThreadX), Wavecom OpenAT, and bare-metal (systems without an RTOS).
  • Ported the Xenomai RT framework to the NetSilicon 9215 ARM processor under a custom version of Embedded Linux and added RT-net real-time network layer support, with changes primarily made to Linux kernel device drivers.
  • Helped update a WinCE Wi-Fi driver for a new version of the hardware.
  • Developed the firmware for a prototype wireless water utility monitor, along with device management and data collection servers.
  • Helped design a prototype wireless biometrics collection system.
  • Developed the touchscreen UI for an embedded Linux-based printer for on-screen modification of templates.
  • Other projects included wireless tracking and monitoring systems.
  • On embedded systems frequently used J-TAG programmers, oscilloscopes, and logic analyzers, and used emulators to speed up development.
  • Embedded systems primarily programmed in C/C++ (some assembly language) with communication over TCP/IP, RS232, etc. Other technologies used: Java JMS, XML, SQL stored procedures, Rational ClearCase, AJAX.
Software Engineer
  • Helped to maintain and update an existing cross-platform screen scraping system
  • Helped develop a re-brandable remote desktop control and a file exchange system using Windows Shell Extensions
  • Work included multi-threaded win32 development in C/C++ with ATL/COM as well as Java Applets and HTML
Software Engineer
  • Developed health-care IT applications in C++ with MFC and ATL/COM, along with a proprietary form of SQL
  • Designed and implemented portions of a pediatric growth chart viewer, a configurable multi-threaded drag-and-drop real-time waveform viewer, a medical schedule editor, and a medical condition history viewer
  • Added HL7-compatibility to one of the frameworks
  • Re-designed portions of a clinical reports viewer to solve stability issues, and include network printing and internationalization (i18n)
Software Engineer
  • Teaching Assistant at University of Minnesota - Held lab sessions, office hours, and created lab projects for an introductory C++ class
  • Home-based contracting business which developed embedded systems software using C/assembly language, web solutions using HTTP/JavaScript and Perl, and Win32 applications using Visual C++. Projects: Automated Packaging System Control Software, embedded motion scale controller, CAN network administration application, embedded controllers for flat product automation systems (Intelligent Line Automation Inc), website design for www.vortexembedded.com, promotional screen savers (for Webb Company), and custom CRM and ERP systems.

Education

Bachelor's Degree, 2003 | University of Minnesota | Bachelor of Science in Computer Science | GPA: 3.5

Other Programming classes:

Advanced C++ w/MFC (Minneapolis Community College) 1998

C++ Programming (Anoka-Hennepin Technical College) 1995

Contact

+1 919-295-0739

jameskilts