Engineering at TrueLayer: the wabi-sabi way

Profile Photo
Luca Martinetti, CTO & Co-founder
11 Jan 2021
Background image

In traditional Japanese culture, wabi-sabi is an aesthetic based around accepting transience and imperfection. Wabi-sabi acknowledges three simple realities: nothing lasts, nothing is finished, and nothing is perfect.


At TrueLayer we’re creating a platform that empowers engineers, innovators and enterprises to build smarter financial services.

This is made possible by our own ever-growing team of engineers. And as we continue to scale, we want to make sure we’re aligned and keep it consistent. This is why we’ve published our engineering principles — to establish a chain of reasoning that will help make better decisions.

We believe that software is beautiful, imperfect, impermanent and incomplete. It is a story being constantly retold, reimagined and repurposed.

Just like our code, these principles are not set in stone. They will be updated to ensure they continue to be useful and are truly representative of our organisation.

Graphic

Software is imperfect and incomplete. It’s never “done”, and needs to be adaptable to tomorrow’s challenges — set for small, iterative changes and ship often.

Software engineering isn’t a solo mission. It’s done by teams through a process of collaboration and feedback. Exercise kindness, empathy and humility. Without these things, it’s easy to lose sight of the objective.

Software (and hardware) is for the greater part deterministic. There’s no ghost in the machine and no mysteries that can’t be solved with greater observability. Ensure we can effectively observe the behaviours of our systems, and use data to make good decisions.

Most of the time there is no single right answer. Think big, challenge assumptions, try new things and enjoy the ride. There’s still a lot to invent, so stay creative and curious.

Graphic

Software is a means to an end. It’s built to solve a real person’s problem. Focus on the user — that’s both our clients and your colleagues — to create something that has true utility.

Software is impermanent. What you write today is going to change tomorrow, strike for simplicity and readability in both code and documentation. It will make the next engineer’s life (and probably yours) a whole lot easier.

Graphic

From design to implementation and testing, you and your team own the software that you build. So take responsibility, think it through and consider the consequences of your decisions — it’s you that’s going to run it in production and maintain it. Give it the love it deserves.

Test extensively. Collect good metrics and use them to drive your decisions. And if you find yourself repeating processes, automate them instead. This will free up your time to do more interesting stuff.

Graphic

Building software is a series of strategic trade-off decisions. The following is our hierarchy of “layers” — or things that we care about — with security as the most important.

Infographic

We’re hiring! If you share our values, we’d love to talk. Take a look at current job openings

Grow with us
We are systems builders, design thinkers and product crafters. Together, we build intelligent financial infrastructure that puts fintech at people's fingertips.
View open roles
Latest
checkout
6 Dec 2024

3 tipping points for change within ecommerce payment experiences

Cart abandonment
2 Dec 2024

How to reduce ecommerce cart abandonment

dev sec ops shared responsibility
27 Nov 2024

Devising a delegated alerts model for SecOps

Categories to explore