Every developer in our team at LOGIC is a full-stack developer, with expertise in a particular field — a T-shaped professional. This has been intentional from the get go, as the unbeatable benefit of T-shaped full stack developers is their autonomy. They can ship a feature on their own, without “waiting for the back-end team to implement the API” or for the “front-end team to hook the UI”. That’s incredible.
I was reminded about the importance of autonomy, when I came back to Athens after one of my stays in Copenhagen and found my motorbike’s battery dead. I had decided to get it towed to the mechanic, until I spoke to my father. He proposed instead to try and fix this on our own — it was not rocket science after all. We would just hook a jump starter on the battery in my garage, ignite the engine and it should be good to go.
He came by, we spent a bit of time trying to locate the battery, as it was tucked in a weird topology. Finally, we connected the kickstarter, ignited the engine and… that was it! Much easier than I thought. I did not need to be a mechanic to get my bike working. The only things needed were a jump starter, a bit of digging and a couple of tools. What I got in return? My bike working ASAP, a few euros saved and quite a lot of time communicating with the tower and the mechanic.
That’s pretty much how we work at LOGIC. Although everyone has a field of expertise, we all should have a sufficient understanding of the whole stack, to reduce unproductive communication and increase delivery times. For example, everyone knows at least a bit of Python in the company — even our creative and front-end developer. Also, everyone knows how to write valid HTML using our TailwindCSS conventions, even those who focus on DevOps. Last, everyone should be able to work with GitHub Actions, read and act upon CI and deployment logs.
We do not waste valuable time on unproductive communication and blocking back and forth. When the situation calls for expertise, the right person takes over. When a reasonable breadth is required though, which is more often than not, a task is carried out by a single person. That’s how we deliver great results on time.