Software
I'm an experienced, well-rounded software engineering leader with a career focused on technology application, variety, and exploration. I've worked in a variety of roles and on various types of teams during my career, including development, professional services, product management, technical consulting, technical presales and marketing, and technical support. Those roles included both individual contributor and leadership components, and oftentimes both (player/coach). I might be missing a few details here, especially as startup roles can be "fluid".
For most of my career I've focused primarily on smaller companies and startups. I work to craft an engineering approach and process that fits a given organization's needs and composition. That means taking into consideration the business space, existing software/processes/approaches, and the goals in front of the business and other teams I'll be working alongside. I use this same approach for personal projects as well - even no process is still a process (reminds me of a Rush song). One approach definitely does not fit all situations.
Technical Buzzwordapalooza
I've worked with a lot of technology over the years, both professionally and personally. To keep this list reasonably-sized, here are some of the technologies I've used in the last few years:
Databases / Storage / Search
MongoDB
Elasticsearch
Postgres
Neo4j
Infrastructure / Orchestration
Docker / Docker Swarm
Kubernetes (K8S)
Google Cloud Platform (GCP)
Heroku
Digital Ocean
Development / CI/CD / Workflow
Git
GitHub
CircleCI
Google Cloud Build
Google Container Registry
Front-End
React
NextJS
Svelte/SvelteKit
Astro
Angular
Back-End
NodeJS / Express
Microservice Architecture
Serverless
Java
Go
Web Technologies
REST
GraphQL
HTML / CSS
Languages
Javascript
Python
C#
Java
C / C++
Swift
Testing
Jest
Ava
Google Cloud Build
CircleCI
Overview
Business-Focused
Technology's role at a company is ultimately to support a product, and thus, a business. A software leader's
job is primarily focused on managing the myriad decision tradeoffs that come with balancing the priorities
of technology, product, and business. In the startup space where I've lived for the past 20+ years, the impacts
of those decisions can be huge.
I focus on making the best technology decisions possible at any given time, balancing the need for an approach
that has the best balance across technology half-life, delivery timeframe, and the needs of the business.
Over and over and over again, many times a day or week, this is where I usually live.
I'm not just a "coder" that just throws stuff around to solve a problem. I'm a technologist that solves business
problems (via product) using technology as a tool. The business is the "Why" part of the equation, the product
is the "What", and I focus on the technology team to fulfill the "How".
This doesn't mean that business concerns trump all other concerns. It's about tradeoffs during decision-making
as a cross-functional team and organization. Without that balance, you can make technology decisions that, 1-2 years down the road,
you wish you'd taken a bit more time to think before moving forward. Multiple times I've seen
small companies in this situation and ended up with a tech stack that impacted them with hard cost as well
as opportunity cost. Not fun.
Product-Focused
Product-focused prototyping
Rapid Iteration = Faster Idea Turnaround
"Fail Fast"
I support product management teams by implementing concepts across the spectrum from
broadly-defined ideas to fully-realized wireframes, allowing teams to better understand
product and technical risk early. I've built entire end-to-end content systems to provide
new data streams to existing products while allowing for internal, pre-production review
early, before significant investment was made. I like to give a product team the chance to "fail fast" .
I've managed product delivery as a technical product manager for a legacy product's first
REST API. I evangelized that same API to customers with developer support, demonstrations,
conference talks, and SDK development/delivery.
I've worked directly for a VP of Product Management, providing him with support on both the
technical and product fronts as part of a larger product vision and approach.
I often times act as "glue" between product teams and technical teams, able to work with
both seamlessly and wear the correct "hat" based on the situation.
Technology-Focused
Fullstack Development
Cloud Deployments
Product-First Mentality
I have a background in development, a BS in Computer Science, and love working with
technology. I've spent time with languages including Java, Javascript, C, C++, Objective-C
(even before it was cool), Python, Swift, HP-UX/RISC assembly, and more.
These days I spend most of my time with some sort of a Javascript stack as a
starting point, modifying the specific moving parts as-needed to support various use-cases and scenarios.
I've used this approach to build a new company's entire product from the ground-up, replace an internal content
management system, prototype a solution for finding efficient fiber installation paths, and prototyping changes
and extentions to existing production systems.
I pick up technical concepts and direction quickly, then assimilate it into my approach in a
meaningful way. This allows me to work fluidly with cross-functional technical teams both as an individual
contributor as well as a leader, keeping teams and work aligned.
I worked in a technical sales capacity for quite a few years and I excel at helping less-technical people
understand technical concepts in a way that's more approachable for them.
Customer-Focused
Technical Pre-Sales
Technical "Heavy Hitter" For In-Flight Sales Deals
Technical Consultant
I've supported a worldwide enterprise sales team as the primary go-to technical resource.
I've delivered proofs-of-concept, product demonstrations, and managed technical
conversations and issues with prospects during in-flight sales opportunities.
I've single-handedly architected, implemented, and deployed infrastructure designed to
support a worldwide sales team, transitioning from bare-metal deployments to virtualized
public and private cloud hosting, taking POC deployments from two hours down to two minutes.
I was part of a small team of highly technical consultants associated with a product company
that helped our customers design, implement, and deploy our product suite. I spent quite a
bit of time in hotels throughout the U.S. for a few years.