Dan Drasin's 5 steps to achieving Software Engineering Excellence

Dan Drasin's 5 steps to achieving Software Engineering Excellence

Software development—or engineering—is arguably the heartbeat of every modern-day SaaS company. After all, the software engineering team is responsible for building the product which is no easy task.

It goes without saying that the success of a SaaS company relies heavily on the output of their software development team.

So how do you promote software engineering excellence?

Dan Drasin, Chief Development Office of Shift4 Payments, an eCommerce enablement platform that processes over 3 Billion payments per year, recently spoke to CXO Talk on this very topic. 

 

Dan has been a customer of Intevity for 16 years and has a wealth of knowledge to share on building out an agile, high-performing software development team as he now oversees Shift4’s entire engineering team. Here are 5 of his major takeaways on how to achieve software engineering excellence from his chat:

1. Iron Triangle Execution

In software development, there is a widely used project planning process known as the “Iron Triangle”. Iron is used as the symbol because if one constraint is changed, it’ll impact another. The three constraints are:

  1. scope
  2. resources
  3. time

Concepts of the Iron Triangle helps teams prioritize what’s most important based on their specific project goals, and keeping top of mind the tradeoffs of each. For example if quick time to market is most important, product feature set might be initially less (note we said less—not poor quality). 

 

2. Scaled Agile Framework (SAFe)

Scaled Agile Framework, or SAFe, helps larger engineering organizations stay responsive and agile as their team grows. When an engineering team is small, there’s minimal tape so it’s easy to be nimble. But as they expand, the task becomes more difficult. 

The SAFe framework helps enterprises remain agile by focusing on guiding principles of operation. For a deepdive on the topic, check out this great blog by Monday. A quick synopsis from Dan during his CXO Talk, 

“We leverage a version of Scaled Agile which allows us to iterate very quickly…get releases out to our customer base quickly and most importantly—then get feedback from those customer bases as to what we’ve done well and what we need to improve on which helps advise us on how to do the next iteration.” 


3. Infusion of Business Strategy and Software Development

Often, enterprise companies use consultants to help their company achieve both their business objectives and software development goals. But as Dan mentions, it’s essential that these consultants don’t work in silos and are tuned into the broader strategic vision.

Intevity’s consultant team worked as an extension of Shift4 Payments, ensuring they understood their unique business goals and objectives so that all software development goals would be closely aligned to the overall business strategy.

 

4. Second Order KPI

An important component of every high performing software engineering team is the ability to deliver on key performance indicators (KPIs). Teams must set KPIs based on your unique objectives. Dan’s team uses “second order KPIs”, meaning they’re less focused on absolute numbers and more focused on gradual improvement. 

Below are two examples of how his team measures for success:

  1. Cohort analysis: Are people actually using the new feature? Have they abandoned the feature?
  2. Operational analysis: Is the new feature using twice the CPU or memory it once has? What’s the impact on the business? 

 

5. Governance

In software engineering, governance is the guiding principle that holds your team accountable. Basically, it keeps you focused on your objectives and makes sure you carry out your mission. 

As Dan puts it,“Governance is making sure you are doing what you say you’re going to do.” It’s the hierarchy on which you achieve software engineering excellence.

There are 2 major principles to achieve governance:

  • Insights: Having insights into the projects and workflows going on is key to keeping things on track. Product management is key in enabling insights.
  • Insight validation: This is the more technical aspect of governance—making sure the processes you implement aren’t negatively impacting the business (e.g. costs are too high, security, data integrity)

 

Final Thoughts From Dan: Engineering Culture Matters

Creating a high performing software development team isn’t something that happens overnight. You need to create a culture for engineers to thrive in. One they’re excited to work on with a clear line of sight into vision and execution. 

In his interview with CXO Talk, Dan mentions that achieving engineering excellence starts on ‘day one—with the hiring process. You need to hire the right people to drive software development forward. To do this, there needs to be alignment on interview questions to ensure each team member hired is a good culture fit.

Thanks to Dan’s insights on creating a high performing software development team, businesses can feel confident on steps to take to set themselves up for success in the new year. 

If you’re looking to achieve engineering excellence in 2023

Get your free consultation

 

 

Download Intevity's Digital Assessment