Coaching For Companies with Budding Software Development Teams

If your company has a product or service that you are augmenting with custom software - and you’re finding that maintaining, updating, and delivering that software experience to be a challenge, then you’re in the right place.

As you’ve likely realized, software development is complex.

 

With new feature releases, infrastructure upgrades, and adaptations to a changing marketplace code gets bloated, workarounds become complex, and teams become more and more dysfunctional.

My role is to bring my 25+ years of experience in software development (for companies like Uber), and managing engineering teams to implement proven processes that will increase efficiency and get your team working together in the most efficient way possible.

We work in 4 phases:

Phase 1

Create a Clear Workflow for Prioritizing Work

Phase 1

Create a Clear Workflow for Prioritizing Work

The biggest problem that entrepreneurs run into is planning to release way too many features - many of which don’t perform the way they think they will, and that their customers may not even use.

We begin by standardizing the idea creation, execution and feedback loops (from your customers) to determine which features will be released next.

The workflow we establish will facilitate delivering features and updates within shortened cycles. In turn, this allows customer feedback to be incorporated more quickly so you can continually meet business and customer needs.

This step will result in:

  • Fewer errors and bugs during production and with newly released updates

  • Growing, sustainable output from your existing team

  • A solid foundation to build upon as software and business needs expand, allowing for smoother production in the long-run

Phase 2

Implement Failsafes and Testing Standards

As delivery improves, it is also important to ensure that quality stays high. One problem software teams often deal with is that testing environments don’t always mimic the user-experience such as how software performs on the user’s device or on production systems.

In this step we will implement proven monitoring, logging, alarming processes, dashboards and failsafes that ensure our software is running smoothly all the time and that all customers are getting a great experience. We will track both business and technical metrics and make them visible and actionable.

As a result your software will be able to:

  • Scale easily as your customer base grows

  • Avoid speed issues that can happen as new updates are added

  • Push updates reliably without fear of glitches or outages meaning - happy customers, and less fires to put out.

Phase 2

Implement Failsafes and Testing Standards

Phase 3

Reinforce Foundations and Reduce Complexity

Phase 3

Reinforce Foundations and Reduce Complexity

What often happens as software grows is code gets inflated, architecture becomes more complicated, and knowledge may be hidden in code or people’s heads. This makes it harder to make changes as touching one area may affect another. Things slow down.

Workarounds may have been needed to mitigate issues, and more and more features were added to what was an already shaky infrastructure. This is a recipe for small mistakes becoming huge issues, redundancy and inefficiency, and things becoming steadily worse as your company grows.

In this stage we will systematically replace and reinforce the foundations the software is built on, creating a simplified and strong infrastructure that will withstand future growth. We will review and revise the software architecture, and ensure the technology is well aligned with the business problems we are trying to solve.

As a result you can expect:

  • Scalable growth and the ability to release features more quickly.

  • Fewer headaches and unnecessary steps.

  • To catch problems even more quickly because the code is clean and stable.

Phase 4

Sustainable and Predictable Updates

No more willy-nilly releases or missed deadlines. With the stable structure and processes we will have implemented, you’ll be able to accurately visualize your release schedule with smaller updates being able to ship on a weekly basis, with larger platform-wide upgrades happening on a schedule you determine.

In this phase we build upon the previous phases, and we do finer optimizations. Here we look at the big picture adjustments we need to make to build sustainably and predictably in the long run. Having a solid foundation we can consider available options more strategically.

As a result:

  • You’ll finally have the ability to execute your ideas in nearly real-time.

  • Every feature you release will be vetted by customers, meaning no wasted resources, and continually creating more features that your customers love.

  • Your vision for your software and how it fits into your business will be a lived reality (rather than a daydream).

Phase 4

Sustainable and Predictable Updates

When we are finished you’ll feel more in control and more confident in your product.

You’ll also have an increased capacity to deliver cutting-edge experiences to your customers and set yourself apart in your industry.

This service is uniquely suited for companies who:

  • Didn’t initially set out to create software and now find themselves with an engineering team

  • Started out with no-code or out-of-the box software, and are now creating their own custom solutions

  • Are frustrated with the amount of time and resources that go into their engineering teams with little to show

  • Think they need to expand their team because it seems like their current team can’t keep up

  • Are expending resources putting out fires and dealing with customer complaints because the quality of their software isn’t what it could be

  • Have numerous work-arounds in place to make up for inadequate software engineering

If you have a mess, I’m here to help you clean it up and get your production schedule on-track and deliver on the larger vision for your company.

Here is what working together looks like:

We begin with a “Diagnosis Week”, devoted to identifying weaknesses, chokepoints, and redundancies so we can prioritize and plan how to get rid of them. During this time I’ll meet with stakeholders, including your engineering team, dig into your code, and get the lay of the land within your company to quickly get a pulse for what’s going on.

From there, I’ll lay out the roadmap and we work for 6-12 months working through the phases I outlined above. My role is to provide you with specific guidance, processes, and oversight while your team integrates my proven processes and industry best practices into their workflows. I will also be available as a highly experienced resource you can lean into when highly challenging or strategic problems arise.

My fees are reasonable, much less than hiring even a junior engineer, and will quickly be offset by the increased productivity of your team and ROI on your product.

If you’d like to discuss how I can help your company - then your next step is to book a consultation.

We’ll dig into the challenges you’re facing, and I’ll give an honest assessment of the likely root causes of what’s going on, and how I can help you fix them.

🗓️ Book a Free Consultation