We often hear about the importance of exchanging knowledge and practices between different teams. However, less often do we hear concrete suggestions for how to do it. In this article, we discuss one of our practices to address the problem.
The Allegro Tech team consists of more than 500 skilled and ambitious engineers who work in 5 locations: Poznań, Warsaw, Kraków, Toruń, and Wrocław. It's highly probable that you have already met some of them at meetups or conferences in Poland or abroad. Moreover, there's a chance that you are going to have a chat with them during our recruitment process. Find out what they think about Allegro as a workplace, and what drives them.
I joined Allegro right before the microservice revolution. From this perspective I can see how much has changed and how lucky I am to be part of that process. Currently I’m leading a team responsible for services that are fundamental to our new architecture. My job is to make life of all our developers easier and ensure that the infrastructure is ready to meet their demands. Despite exciting technologies and the huge scale, the most important thing at Allegro are the people I work with, engineers and managers from whom I still have a lot to learn.
Since my first days at Allegro I have had the opportunity to setup and work on many exciting projects. As a System Engineer I was building infrastructural services like a log aggregation system. Later, as a Solutions Architect, I was involved in migrating our platform to Service Oriented Architecture. Now I'm engaged in a Hadoop data governance project and building our BigData stack. It proves that Allegro is a great place where you never get bored because there are always inspiring projects going on.
I spent half of my life programming (for the last decade professionally in Java land). I'm disappointed with the quality of software written these days (so often by myself!). I believe that computers were invented so that developers could automate boring and repetitive tasks. I am involved in open source and used to be very active on StackOverflow. Author, trainer, conference speaker, technical reviewer, and runner. I claim that code not tested automatically is not a feature but just a rumour. Working on Allegro, a system of such great scale, is both challenging and fascinating. But I'm happy to be part of an amazing engineering team, people who I have a lot to learn from.
My adventure at Allegro started in April 2012. Back then I was working on a ground-breaking Open Source project – Ralph. It is a system for managing Data Center infrastructure that helped us automate work of thousands of servers and optimize the maintenance cost. I lead a team that develops software for managing servers, databases and microservices. Every day, we look for solutions that allow us to use the resources of our two Data Centers to their maximum, lower the cost and conveniently automate tasks performed in Data Centers. Our goal is to provide absolute scalability and ensure that Allegro developers can deploy new functionalities for our users in no time. Working with our infrastructure is far from mundane. When integrating various systems you have to deal with many programming languages such as Python, Go, Java and even Swift. Moreover, the scale of Allegro provides exciting challenges, where every 1% makes a difference.
I have worked with Java related technologies since 2004, and I joined Allegro search team about 3 years ago. Developing the largest e-commerce search engine in Poland is both challenging and fun. Working as a full stack search developer can be demanding as it requires a unique blend of software development, devops and Big Data skills. I enjoy the atmosphere of restless technical curiosity which I experience at Allegro. I've never had a chance to work with such passionate developers before! You learn something interesting in terms of software and product development all the time. Moreover, I support Java community in Poznań as one of the leaders of Poznań JUG and as a co-organizer of GeeCON conference. I am a happy father of three, and a lucky man who married a very patient woman.
In my everyday work I look after a node.js application that renders the most of the Allegro frontend - it’s place where I can focus on improving user browsing experience and push Allegro towards cutting-edge technologies. I especially like debugging stuff (mostly in hostile web and microservices environments) - that’s why my team calls me (non-ironically, I hope) "team detective". I’m trying to be company’s voice of reason in a field of its frontend solutions. I also enjoy recruiting new people to Allegro - maybe we will meet someday?