Skip to main content
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
Infrastructure / Orchestration
Docker / Docker Swarm
Kubernetes (K8S)
Google Cloud Platform (GCP)
Digital Ocean
Development / CI/CD / Workflow
Google Cloud Build
Google Container Registry
NodeJS / Express
Microservice Architecture
Web Technologies
C / C++
Google Cloud Build


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


    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.


    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.