What happens when you combine agile product management with expert software engineering practices?
One of our key services at TPXimpact is product engineering. This is how we build high quality digital products and services that meet user needs (on behalf of our clients).
For us, product engineering is the combination of product thinking, disciplined agile approaches and modern software development practices. It is about ‘shipping’ sustainable, secure, scaleable products that are user-centred.
We might be convinced of the benefits, but what does product engineering really look like in practice?
How to build the team
Any product engineering practice starts with the makeup of the team. Our people are passionate about the idea of ‘doing the right thing and doing the thing right.’ Loosely, this means that our product people take care of the first - defining and designing the product - and our engineering teams take care of the latter - building it to a high standard. Though of course, nothing is ever that clear cut.
All our people — whether they are engineers, product managers, testers, or data scientists — are comfortable with agile ways of working and empowered to speak up where they see opportunities to improve the team and/or product performance.
In product engineering, there is no doubt that ‘the unit of delivery is the team’ - the power comes from the combination of skills and perspectives, from having a range of different specialists who come together to create something greater than the sum of its parts.
User + business + tech
Sean Beverton-Tubbs, our Commercial Director, explains how the multidisciplinary focus of this approach leads to better products:
“Through product engineering, we help our clients build things that users want to use,” says Sean. “As a practice, product engineering enables us to work in complex business environments, to apply a data-driven lens on what is built, and to really make sure that a product or service is successful."
"We need to make pragmatic decisions about what to build, the right platforms to use; with a real understanding of quality, safety and scalability in that space. So for us, product engineering is about ensuring the user, business and technical aspects of the conversation are all considered from the outset," he adds.
Enter the engineers...
A mistake we see all too often in product engineering is not bringing in technologists into projects early enough.
Too many Discoveries and even Alphas don't really consider the engineering challenges of their findings and recommendations. Getting early engineering involvement greatly increases the chances a project will deliver successfully - and will also help manage expectations around what the product will actually look like.
In those early Discovery stages a full-time technologist is obviously a luxury, but having technical skills available to provide a sense check is invaluable.
“We always try to get our engineers into our teams as early as possible,” Sean says. “Typically, this won't be at the Discovery stage, because this is when you are trying to work out what the user need is or build a business case that the product is worth investing in. But the sooner you can get to building things, getting them in front of users, and testing them - the better.”
“All our work is grounded in agile delivery, so it lends itself very well to being run in a focused, continuous improvement, user feedback-driven environment, with the ability to test and learn,” he notes.
Bringing engineering considerations into the mix at an earlier stage is a key factor in product engineering, that is made possible by the interdisciplinary makeup of a team.
“The integrated nature of product engineering forces the decision on whether or not you are going to build something earlier, so the focus of your work is sharper,” Sean says. “You will know whether or not the product idea you have is viable or not from a technical point of view.”
Passionate about product
So there you have it. Our take on product engineering — a way of merging excellence in engineering and product thinking, to deliver high quality products that meet user needs as quickly and efficiently as possible.
None of this is unique to us of course. High performing software teams the world over think and work in this way, but too often it is not the case... We've all seen instances when product engineering has gone off course — where principles are compromised, opportunities to improve are ignored or considered too risky and decisions are made far away from the engineering teams that need to implement them, with little understanding of the practical implications of those choices.
If you would like to learn more about our product engineering services, we'd be happy to hear from you.