Hi! I'm David, often found online as edmistond.
I'm an experienced polyglot software developer and team lead who's worked across the entire stack in a variety of languages. I've been in the industry for over two decades now, with a track record of consistently delivering projects with substantial business value to my employers and to our clients.
As an experienced senior developer, I take a pragmatic, learning-oriented approach to software development. I believe strongly that:
- Outstanding developers, including seniors and team leads, are interested in good engineering, not solely their engineering.
- Outstanding developers always check their egos at the door.
- No matter what level you are, there is always more to learn and you are always best served by bringing a growth mindset to your work.
I'm happiest when I'm working on interesting, challenging technical problems with a major business impact, and which push me to explore new things - whether that's a new business domain, a new framework, or a new programming language. Even better is when I get to do those things while maintaining a fast release cadence; seeing your code in production quickly is extremely satisfying, and code that's finished but not deployed to production is waste. I am very much an advocate of the view that code should be deployed as frequently as possible in as small of a changeset as possible; ideally within minutes of merging it into your main branch.
I'm also a team lead at my current employer, though this does not necessarily mean a technical team lead (though I've led some teams/projects) so much as it's a baby manager role. Our first-line managers have too many direct reports to make frequent 1:1s practical, so instead groups of 2-4 team members are assigned a "team lead" who does the regular 1:1 check-ins with them and assists the first-line manager with things like mentoring team members, offering advice on career development, providing a friendly ear, etc. I've found it's a very rewarding role that really pushes you to develop your soft skills better, and strengthens relationships across the organization. I get to have a lot of very interesting conversations because of this.
Outside the office, I make an effort to get involved with the technical community in Cleveland, where I semi-frequently attend local meetup groups. I'm also frequently found in the Cleveland Tech Slack community, as well as the Rands Leadership and Deaf Professionals communities. On a personal level, I make an effort to spend time with my family (as do we all :)), noodle on the occasional side project, and maintain an occasional interest in photography.
Some things I've built or worked on in my career
- Material Safety Data Sheet intranet application designed to make information on various industrial chemicals quickly accessible to chemists, engineers, and technicians. My first project as a professional software developer.
- A corporate intranet site designed to make information more widely available within the company. The very first project that I ever led, as an intern. I have a fun story about youthful arrogance and how my coworker and I made my company's help desk folks very mad at us one morning; ask me about it sometime!
- B2B customer self-service portal for checking inventory, submitting orders, and checking on order shipment status, using XMLHttprequest and XSLT to build client side applications before ‘AJAX’ was a thing. All of this stuff is table stakes now, but it was on the bleeding edge when we originally built it.
- Online ordering systems for telecom clients allowing customers to assemble a bundle of cable services. I learned more about the common APIs that cable companies use for order management than I ever really wanted to know.
- Sweepstakes and marketing campaign applications, including many with a lot of interactivity and user engagement. Some server-side, some client-side with API backends. Some of these were a lot of fun, like getting to work on Charter's Center Stage promotions.
- In-house scripts for creating and uploading delta deployments of ASP.NET applications rather than the entire application, due to a client requirement to only upload changed files. This one was... interesting; one of my earliest uses of git, and Python.
- Data processing pipelines using Java and Spring Cloud Data Flow. SCDF is interesting, but when I was doing this (~2019 time frame) it was... quirky. I liked how it was built on standard technology and it would be interesting to see if you could integrate a C# application into a workflow now.
- CI/CD pipelines in Azure DevOps for a variety of application types, including Azure Durable Functions applications. This was in the ~2020 COVID era timeframe, so maybe it's better now, but it's amazing how many opportunities Durable Functions in that era gave you to shoot yourself in the foot, whether through a deployment or other methods.
- Prototyped database migrations using a C# application (DbUp is awesome. 10/10 would recommend) and Azure Devops pipelines to simplify my team's deployments while reducing errors, guesswork, and blown migrations. Any form of manual database deployment process is terrifying, and as soon as I have to touch it, it becomes my mission in life to automate it.
Other things I've done
- Advocating for better engineering practices, such as database migrations for faster and more reliable deployments.
- Pushed migration to tools that better fit how we worked with clients, such as moving to git from TFS to better handle multiple simultaneous streams of in-flight work.
- Collaborated closely with our project managers and account executives to deliver value to our clients as rapidly as possible.
- Assisted our project managers and account executives in drafting proposals for our clients.
- Worked with clients directly to better understand their problems, or when standing in for project managers while that position was vacant or they were unavailable.
- Acted as lead developer on a project to revitalize a complex legacy application where the original team was no longer available and stabilize it to the point that the organization is able to continue to maintain it while deciding how to move forward with it.
Places I've worked
Important disclaimer: I don't speak for my past or present employers, and they don't speak for me.
- Cooper Tire and Rubber Company
- Knotice, an IgnitionOne Company
- IgnitionOne
- Park Place Technologies
- Insight Enterprises (and associated clients)
Languages and Platforms I've worked with
- C# - ASP.NET Web Forms, ASP.NET MVC, ASP.NET Web API, command-line applications, CQRS-pattern applications
- Java - Vert.x for web APIs, reactive programming with RxJava, data processing pipelines using Spring Cloud Data Flow
- JavaScript - both in-browser front-end as well as web APIs built with node.js
- SQL - Primarily Microsoft SQL Server and PostgreSQL
- Ruby - primarily for command-line scripting
- Docker/Kubernetes - proficient at dockerizing existing applications to allow them to run in containers, have worked with the process of deploying and managing them on a Kubernetes cluster
- Azure Functions/Durable Functions
Conferences I've Attended (Say hi if you were there!)
- CodeMash - 2009-11, 2024
- Stir Trek - 2012, 2016, 2021-23, 2025
- Steel City Ruby - 2013-14
- Erie Day of Code - 2015
- Kalamazoo X - 2014-17
- Microsoft Build (online) - 2020
Current Projects I'm Messing Around With
- A custom live captioning application, since I've yet to get one that does quite what I want it to.
- This blog, which is always a work in progress