Frontend Developer with Fullstack Mindset. Meet Bartek – a Bright Tech Lead
Java, SQL, TypeScript, server administration – he has done it all. This is the story of Bartek, a Tech Lead of the frontend team at Bright Inventions. What does it mean to be a tech leader? What are his daily challenges? What did he discover trekking in the Himalayas? Let’s talk to Bartek.
What were your software development beginnings?
I studied Electronics and Communication at the Gdańsk University of Technology for my Bachelor’s degree. Then I studied Informatics for my Master's. My first IT experience was deeply connected with the fact that I lived in student dorms in Gdańsk. I joined the Students' Campus Computer Network (SKOS) that managed the whole internet infrastructure in the residence hall of the Gdańsk University of Technology.
SKOS took care of every aspect of providing dorms residents with the internet including managing servers, building websites, firewalls, and more. It was a huge initiative. The University was the official administrator of the network but in fact, it was the students' job to take care of it on a daily basis. At a peak moment, we had over 3000 users while the SKOS team consisted of around 20 people. So that was a lot of work and a huge responsibility. Losing internet connections in a dorm – who would like that to happen? 😉
After that, I got my first internship at a software development company. I was working on a system for public administration which enabled exporting PDF printouts. I was mostly writing in SQL there.
Then, I joined the Gdańsk University of Technology as a regular employee. I worked on a platform that was a virtual dean's office. Thanks to this system students could for example apply for scholarships online. Everything I did there was built in Java.
Network administration, SQL, and Java… One could be surprised that you are a Senior Frontend Developer at Bright.
I get that confusion. 🙂 However, after a couple of years, I left my job at the university and joined a software development company where I worked as a full-stack. During that time I had a chance to work on different projects and develop various skills.
Firstly, I worked as a fullstack on a solution built for a client from the shipping industry. I wrote the backend in Java and the frontend in JavaScript. It was my first encounter with the frontend.
Then, I worked on frontend for another client representing the maritime transport industry. After that, I worked for a Norwegian client mostly developing the backend. I guess I was flexible and always eager to check out every aspect of software development.
Then I left my job to travel for a couple of months and when I got back I knew I wanted to specialize only in one side of software development. Bright Inventions was seeking a frontend developer so I applied. My girlfriend used to work at Bright and recommended this place to me. Thanks to her I knew that the atmosphere within the team was more than positive. Another crucial factor for me was that this is a small company. I didn’t want to work in a large organization. And that is why I became a frontend developer at Bright Inventions.
And now you are a Tech Lead at Bright. How did that happen?
What can I say? I submitted my application and it was reviewed positively. 😉 When the opportunity to become a Tech Lead occurred I felt that I could do it. I had over 5 years of software development experience. I was a frontend developer with the longest practice at Bright and I knew the project. The last part could have been crucial here. It was a key moment for our client – Just Eat POS – which was in the middle of a transition from a startup to a global ePOS services provider.
It is funny because when I came to Bright there was only one frontend team which included me and another programmer that worked on this solution. Right now the client has 3 separate frontend teams. So my knowledge about the project and its processes was essential.
What does your work as a Tech Lead look like?
Being a tech lead involves looking at a project from a greater perspective. I have to be able to coordinate the life of this project. Just Eat POS system is a complex project, so I cannot be in charge of every decision. Thus I trust developers to make some decisions but at the same time, I am of assistance to them, if they need me to discuss any problem.
Also, I spend some time on code reviewing and analyzing how to solve some issues. I also take part in various team discussions about choosing libraries and tools. As a tech lead, I code less but at the same time, I cannot become rusty about it. I need to stay up-to-date with the latest technologies, tools, and updates. And that requires time.
Apart from that, I am in touch with the product manager to offer recommendations when there are some business issues to resolve. Then, we together try to find the best solution with the technology we use.
This is how my work looks as a Tech Leader, in nutshell. 🙂
What is the most challenging about a tech lead role?
There are two main challenges I experience on a daily basis.
First of all, it is time management. You have to work hard on organizing your time so you have it for your team. When you are a tech lead, it is not about you anymore. You work closely with your team, a product manager, and other client representatives who expect you to contribute. So I need to manage my time in a way that I can offer my support whenever it is needed. Apart from that, I still need to find time to work on the technical aspects and write some code. 😉 It is not easy to manage it all.
Another challenge is setting priorities. Number one is my team. I have to make sure that the team knows their tasks and their priorities. Only then I can move to my other tasks.
What does your team do on the Just Eat POS project?
Our job is to look after frontend of the back-office web application used by Just Eat POS clients - mostly restaurant managers. What is great about this project, is that we build our own components and we get to choose the stack and tools we use to deliver features. We influence everything we build here. Our client actually expects us to take part in the whole development process. So we give input, for example, into the design process and suggest some changes if they could improve the user experience.
Working on Just Eat POS back-office is challenging because the system is about 8 years old. On the other hand, it gives us a chance to rethink and rewrite it from scratch. And that is what we do on a daily basis. At the same time, we develop new features and take care of the maintenance of the system.
Moreover, the end-users don’t have to be well versed in technology and computers so our goal is to make the system as easier to use as possible.
What I also like about this project is that it is easy to relate to it. It is a system for restaurants. Even if someone never worked for a restaurant it is not difficult to understand end-users' needs. In the past, I developed, for example, a stack exchange platform and I must say that it wasn't as relatable compared to working on a project for the retail industry.
Just Eat POS is a big retail system with a couple of different teams working on it. That influences our job as well. When we as a frontend team want to, for example, change a single button, it is not as easy as you might think. This change could have an influence on 3 other teams. You have to be deep into this project to be aware of that. We need to sync with every involved team to ensure that everyone is on the same page when it comes to a change of – some would say – a minor button.
Just Eat POS is a product on which our end-users rely daily. They use it for hours at work. That is a great responsibility for us. Every little change will affect someone's daily work. It is amazing to work on a project that truly influences somebody’s life and helps them do their job better and faster.
So how do you make frontend changes on the app that is so crucial for your end-users?
There are a few grand rules about implementing crucial changes in the interface of applications.
First of all, you cannot implement any changes for all users at once. Naturally, I mean applications with a significant number of users. You need to first display changes to a small group and only when there are no bugs, implement it globally.
The fundamental part of any crucial frontend change is communication with end-users. They need to be aware of upcoming changes. They shouldn’t be surprised or confused that their daily used app is now completely different. So the frontend development team needs to work closely with the support department.
The bottom line is to make changes intuitively so they won’t be a problem for your users. You succeed when your users don't give it too much thought. So make changes that will make their life easier. 🙂
What advice would you give to someone who wants to become a front-end developer?
I should start by saying that you cannot pursue this career without knowing the basics of JavaScript, HTML, CSS, and React. So it is a must. However, don’t focus only on learning. Focus on practice as well. Do your project. Come up with an app that you would develop using tech you have just learned. Learn and turn it into practice. That is the ultimate way.
You are one of the tech recruiters at Bright Inventions. What is your advice for candidates who are going to attend the interview?
Obviously, I cannot spill the beans about the questions. ;) However, I should emphasize that as a candidate you really shouldn’t be nervous. I know that it is easy to say. Let me tell you one thing. We don’t treat interviews as exams. This is not school. We check candidates' experience and practical knowledge.
We always present a concrete case study or some scenario and based on that a candidate offers their thoughts on what they would do next to pursue the software development project. Therefore you should simply focus on your experience. Show how you handled similar situations in the past. That is what we want to know about you.
Last but not least, never lie. If you have never used some library or don't know some best practice we ask about, just admit it. If you lie, it will quickly backfire.
You are a travel enthusiast. You even spent a couple of weeks in Nepal, hiking to the famous 5k Everest base. How do you recall that travel?
It all started with an idea to buy a one-way ticket somewhere far with no return date in mind. That was the dream of my girlfriend and mine. We decided to travel to Asia. Since we love hiking, we traveled to Nepal. We wanted to experience how altitude sickness affects our bodies and see the beauty and harshness of the highest mountain in the world.
What was also incredible and unexpected about that trip, was the isolation we got to experience. During these 2-3 weeks of trekking in the Himalayas, we had no access to the internet and very limited contact with the western world. Frankly, it made us appreciate what we had at home more.
Eventually, we got to the famous Everest Base Camp at an elevation of over 5k meters. We had a great view of Everest. We were there during late fall. Obviously, weather conditions weren’t easy. However, being in the Himalayas during fall guarantees you a cloudless sky so you can see Everest. It was worth it. Even though during our adventure we had to sleep at various camp bases with no heating, whilst there was minus 20 Celsius degrees temperature outside. Still worth it. 😉
After trekking in the Himalayas, we traveled to Thailand, Cambodia, Vietnam, and then went back to Thailand. We just wanted to experience daily life in different cultures. We came back home, to Poland, after 3 months at the beginning of February 2020. I guess that was perfect timing, just before COVID-19 changed all of our lives.
What are your passions apart from traveling?
I love various sports activities, especially running, biking, hiking, and sailing. I used to sail a lot over the Baltic sea. I hope to be back on board soon. ⛵️