Working at a software consultancy is a challenging, competitive, and, at times, stress-filled experience. It is also filled with huge opportunities for learning and growth that you won’t find anywhere else. That, for me, makes Atomic Object one of the most rewarding places that I’ve ever worked.
Many of the people I’ve worked with are people pleasers who are driven to succeed. For better or worse, it’s very easy for driven people pleasers to become over-committed to the work that they feel pressure (real or otherwise) to complete. If the leaders of a software consultancy are not paying attention, this over-commitment will lead to an unhappy culture, burn out, and high turnover of these team members.
To be effective long term, it’s important that leaders find and communicate a sustainable pace for their company. This includes the expectations for billable and non-billable work.
In Agile organizations, this sustainable pace is often set at forty hours a week. I have found that a sustainable pace can be slightly higher. As long as expectations are communicated clearly, people can still have a good work/life balance.
A Sustainable Pace Primer
In the 1990s, Kent Beck introduced a set of engineering practices called Extreme Programming (XP) with the goal of writing higher-quality software in a human-centric way. These practices are “extreme” because they take logical ideas such as testing and pair programming for continuous review and turn them up to eleven.
Shortly thereafter came the Agile Manifesto and its twelve principles, including principle eight:
Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
According to the Sustainable Pace principle, developers:
- Should regularly work no more than forty hours a week.
- Should never work overtime two weeks in a row.
Atomic is unique in that it was built with XP and Agile practices at its core. We believe strongly in the benefits of working a sustainable pace. Even Atomic’s financial model is built on Atoms working a Sustainable Pace of forty hours a week. We share this often when we review our financial results and discuss how this drives our success.
On Team Projects
On Agile projects, each team is accountable to maintain their sustainable pace. At Atomic, we design a team for every project with the forty-hour pace as the foundation for how work should occur. The Delivery Lead works with the team and the product owner to manage the backlog within the forty-hour boundary. We use the feedback from each sprint to tune future work efforts based on real data. The goal is to deliver consistently over the course of the project.
Problems do arise sometimes, and occasionally there’s a need to go beyond the forty hours for a short period. But this is for rare circumstances and should be time-boxed. Never should a team fall into a death march to meet artificial deadlines. That would lead to a decrease in the team’s performance, more bugs, and an abandonment of the practices that lead to high quality.
Finding the Right Pace
Each team member is accountable for their own work and life decisions. The team does not know if you are working late into the night to finish a story. Unless there is an honest detailed accounting of the hours in a tracking system, it’s easy to hide the extra time being put in to complete a story. This is especially true while we are working in a remote context.
If we don’t capture what work is being done, we can’t recognize and appreciate the sacrifices being made. Nor can we take that extra work into account for future planning. This sets our project up for failure by giving a false picture of velocity and creating unrealistic expectations. And it’s not hard for the hidden extra work to perpetuate itself in an effort to maintain an illusion that all is okay. Hiding this effort hurts everyone, including the client.
When you agree to work at a company, it’s only fair that you live up to the expectations of the job. This includes the time commitment and sustainable pace at which you are working. Your sustainable pace may be higher and go beyond forty hours. That’s okay. However, if you’re consistently beyond what is sustainable, you need to be honest with your team and managers about your pace. Doing detailed time tracking can also help you find the pace where you can work indefinitely.
Pace in a Consultancy
A sustainable pace for makers and leaders is a key strategy for long-term business success. Software consultants are like professional sports athletes who have to consistently bring their “A” game to win.
The research on what makes professional athletes great applies equally to software consultants. Great players/makers have:
- “A natural inclination, commitment, and drive to excel” that average ones lack.
- A “never satisfied” attitude and the grit to get past failures. (At Atomic, one standard of performance is that we are relentlessly dissatisfied with the status quo.)
- An appropriate amount of rest and recovery so they can do their best work.
At Atomic, we expect a sustainable pace of forty hours a week on client projects. We plan for this with our financials and project team assignments. Our dashboards also measure work performed, with the expectation that everyone will work a full-time job. We measure all of this in quarterly time chunks.
We also have other commitments to the company above and beyond billable time, such as writing for our blogs every sixty days. In a thirteen-week quarter, we’ve calculated that Atoms end up working 40.38 hours/week on average, or about 41 hours a week. There are Atoms who enjoy a sustainable pace of 45 hours a week. In general, Atomic does not like to see Atoms doing this for an extended period of time. I believe the best guidance is to say that a sustainable pace is between 41 and 45 hours.
The concept of sustainable pace on an Agile software development team may be hard for a company with a hierarchical culture to accept. Indeed, I’ve seen this struggle play out inside companies between development teams and management teams. Some leaders don’t accept the sustainable pace principle; they expect teams to always meet arbitrary deadlines that are not based on data-driven project management and good faith estimates. They are trading what’s best for the company in the long term for a short-term result. I believe this is largely driven by ego and a lack of understanding of software development.
Companies that value continuous learning, collaboration, and safety for their employees have a much easier time accepting and living with a sustainable pace. Indeed, they may already have HR policies and practices that actively treat people as humans and support flexibility in their schedules. For those companies that agree with sustainable pace, their biggest challenge is consistent high engagement from their development teams. This problem is more related to their talent pipeline and the type of developers that are joining their teams.
Companies that adopt a sustainable pace for their teams will find happier people and better results. What a sustainable pace looks like may vary, but adopting a pace of forty hours (or a little more) is a sound strategy. Managing expectations at the start of the hiring process will ensure buy-in of your company’s pace.