Within any group of people, whether they work together or frequent common spaces and rituals, certain beliefs and codes guide them towards a healthy coexistence or common goals.
It is not different when we think about tech teams: to drive innovation and build a healthy work environment to foster self-development, we need a robust set of principles and values that we often call Engineering Culture.
Engineering culture: not only coding
It might surprise some of you, but not all aspects of good engineering culture involve coding – which doesn’t mean that the top priority is not the quality of the execution when you aim for hyper-growth and customer-centricity.
The key objectives of building a good engineering culture are forming and sustaining an environment where software engineers feel challenged and engaged.
In this sense, the culture manifests itself through how the organization sets goals, the technical practices adopted, how people collaborate, the decision-making process, and how management translates the values to expected competencies and communicates all this to the teams.
With that, designing a culture requires a deep understanding of pain points.
Some are pretty familiar across different corporations, such as operational burden, career development, and growth opportunities, and there is no magic recipe to tackle all these factors here. Balancing short and long-term plans can pave the road to create a greater place where engineers can work effectively.
Engineering culture at Nubank
At Nubank, we constantly review our practices and revisit our processes to make them better and more efficient – and reprioritizing and shifting directions are only possible when there is a solid foundation.
Being vocal about the principles that guide us as a tech team has helped us scale while all the team members keep nurturing the culture every day by shipping new products, establishing rituals and routines, onboarding new colleagues, and providing growth opportunities.
What are our engineering principles at Nubank?
Before we go through them, it is worthy to say that they reflect our core values and reverberate our mission of fighting complexity and empowering people. That being said, leveraging through platforms demonstrates our mentality of solving challenging problems by abstracting complexity through providing options and support to our teams.
In a customer-centric environment, trust is also a baseline for everything we do. “Customer Trust is Hard to Earn and Easy to Lose” is the tagline behind our principle that translates how security and privacy are a top priority.
The difference here is the Nubank way to solve problems: smart efficient design controls guide our security strategy once we believe complexity incentivizes negative behaviors, and simplicity and consistency are fundamental to make security possible.
Another fundamental piece of our engineering culture is ownership, which means each of us is responsible for the quality of our outcomes, and we do not outsource quality assurance – our expectations about our own work should be higher than anyone else’s.
And by quality we also have a defined understanding: in our teams, a good quality outcome removes complexity, helps our customers (internal and external) to achieve something they couldn’t before or in a better way, is resilient against malicious actors, aims for correctness, and is designed for many “-ilities” (stability, availability, etc).
In addition to all that, in the process of achieving this quality outcome, engineers must also be able to understand and explain the tradeoffs, an inherent part of our role.
By having these clear guardrails we also encourage one more critical behavior that grounds our engineering culture: involvement.
We must advocate and participate in the complete development cycle of our products.
Engineering is part of a cross-functional team, so we help to shape, design, execute, deliver, and analyze the solutions proposed. All these principles – combined with other critical ones, as data as a strategic asset and our conscious choice for a canonical approach – have been culminating in healthier teams.
As I said before, there is no magic recipe, and we need to be vocal and live the culture every day to ensure it will be perpetuated. Still, you won’t regret being open to feedback, being intentional and vocal about the value of behaviors, maintaining a vivid learning cycle, and constantly presenting new challenges to your team.