On experience and expertise: An interview with one of UPDIVISION’s senior developers

Back to blog

November 12th, 2020, posted in #ourpeople
by admin

Our senior developer and team lead, Alin, has been with UPDIVISION since 2014. We sat down via Meet and interviewed him about his career, his growth as a developer, and his future plans.

 

1.Who is Alin? Tell us about your career, educational background and your current role and responsibilities at UPDIVISION.

Well, it all began in high school. I studied computer science, which is where my passion for everything IT started. That’s also where I first learned SQL. From then onwards, I continued my studies in Computer Science at Craiova University, where I learned lots of things: hardware, software, you name it. I don’t know if it was hugely relevant for web development - back then web development wasn’t really established yet. But of course, learning algorithms and lots of programming concepts was very helpful. When it comes to web development, I learned a lot by myself. The first website I ever made was an e-commerce platform, and that was the first time I ever built a website by myself, from scratch, with no ties to university. I thought it was quite easy so I told myself “Ok that’s it, this is what I want to do - build apps”.

 

During that time, still in university, I worked for a company that had no ties to IT. I was mostly in charge of maintenance, everything computer related, printers, xerox machines, those sort of things. If they needed someone to use Word and they didn’t know how, they would ask me to step in. I was technical support, if you may. But I learned lots of other things: HR stuff, contracts etc. This was quite useful - they’re things I wouldn’t have learned by only doing programming. Plus, it was during university and the schedule allowed me to attend classes as well, so it was nice, but it wasn’t an IT job, as I would’ve wanted. After I graduated, I decided to move to Bucharest, hoping to find a job in IT. 

 

I got my first IT job at an outsourcing software development company. That’s where I learned and solidified knowledge in HTML, CSS, making websites, everything web development. After a few years, my company became more product-oriented, and was taking less development projects. Their internal projects were very complex and they didn’t have a proper planning system in place. And that’s when I told myself that it’s time to move on. After I started working at UPDIVISION, I learned lots of programming languages and frameworks such as Laravel, Vue.js, CodeIgniter, and so on. And after all these years, I’m still here.

 

At UPDIVISION, I’m a senior developer and a team lead. I’m fullstack, which means I do both frontend and backend. Lately I’ve been doing more frontend, in Vue3. I also work with Component Library, which is quite complicated. But I do a bit of everything. I also coordinate projects, mostly internal, or from our partners. So I’m also a team leader on some projects. I take part in recruitments and technical interviews as well, which is something all senior devs here at UPDIVISION do. Overall, my role is quite complex.

 

2.Tell us about some of your favorite projects you’ve worked on. What was challenging and what was fun about them? 

One of the most memorable projects I worked on was a social network. It was quite challenging, and I learned Vue.js for it, which made the frontend easier to manage. I also used Amazon Web Services for the first time, to host and scale the app. Another challenging project that I liked was a platform for stock exchange companies and institutional investors. Over there I worked on the API and frontend. I did it, redid it, it was a huge project. I learned a lot of things there too. Another impactful project was an online publishing platform from Austria, where I got to see a different type of management, how others work. These were the most interesting ones. Overall, by being challenging, they allowed us to grow - both me personally and us as a company. Thanks to them, we’ve implemented better project management practices. 

 

3.What is your proudest contribution to UPDIVISION? 

I introduced some technologies, such as Vue.js. I also pushed hard for adopting Laravel, because what we were using before, CodeIgniter, wasn’t as good. In terms of development, I also pushed our team to standardize our process, to improve everything that could be improved. Such as implementing code standards. We also tried to make repetitive processes automatic, or just anything that could be automatized, such as deployment or reviews. I also took part in introducing our monthly programmers’ meetings, as I had the idea to share knowledge among the team. 

 

 

4.Tell us about the most important lessons you learned while working at UPDIVISION.

First of all, you have to keep up with everything new, so you can make your work easier. If we’d limited ourselves to JQuery or using CodeIgniter, we wouldn’t have evolved the way we did. You always have to push, push, push, and learn. When I was little I thought, “I don’t ever want to become a teacher, they have to keep learning their whole lives”. But I became a programmer and discovered I have to learn more than a teacher would. So I didn’t escape what I tried to run away from:) But when you do what you like, it’s different. I’ve been programming since high school. Back then I told myself “I like this, this is what I want to do.” Everything I did from that point onwards was towards software development. 

 

At first, I was focused on actual software - things you install on your computer - and not web development. But I think web software has a bigger impact. It depends on the project, but usually web apps have a bigger impact than a program you install. Plus, mobile has been integrated much better lately. Technologies are heading that way - eventually phones will run websites the way a mobile app would.

 

I also learned that you shouldn`t limit yourself, just because something is familiar. And that’s what’s cool at UPDIVISION. Here, I’ve always been able to suggest things and they were often welcomed with open arms. Moreover, my colleagues would say, “Go, Alin! What have you learned lately? Let’s do more!”. They’d never refuse to do something just because it was unfamiliar territory. I was able to do new things without being held back. Plus, it felt like working with a group of friends. The fact that I was able to do what I like and be in a relaxed, friendly place, was more than I could’ve ever asked for.

 

5.What do you think would be the best way to improve yourself after gaining so much experience? How can one keep improving all the time?

You have to read a lot, especially if you love what you do. You can’t know everything all the time. Technology, everything software, hardware which always develops and pushes software with it, they’re all in a constant state of evolution. Something new comes out - you gotta read about it. Find out what it brings, if it helps you or not, how you can use it to make your work easier and more pleasant. So you can enjoy it. 

 

There are probably a lot of juniors entering this field because of the high pay. So it’s hard to find qualified people. If you go into programming for the money but it’s not your favorite thing to do, and you learn, let’s say, PHP, then you stick to that, you’ll never improve. You need to learn more by yourself, to see what new versions of programming languages bring. While we’ve been talking, 5-6 new JavaScript packages have probably come out. That’s how quickly things change, especially for JavaScript. 

 

If you’re not up to date, if you don’t read every day and stay informed, you won’t ever get better. You’ll only get to a certain level and never go higher. You shouldn’t be watched and pushed by someone else. Plus, your company also benefits from you learning new technologies - the new is always sought out. No one wants to build a site on an old framework or with a very old version of PHP. If you don’t like what you do, if you don’t care about learning more, you won’t exceed in this field.

 

6.If you weren’t a developer, what kind of job would you have?

I’ve never thought about this. I gave myself a goal and that was it. I think I could do a lot of other jobs, even more “low level” ones. I don’t mind work. Even physical work. But I would probably work in an office as well. Definitely something involving computers, because I love it so much. Maybe something in hardware, maintenance, network administration, people who install cable. Something that involves wires.

 

7.What does a senior developer do in his free time?

He reads a lot about software development. I started a blog, but not because I liked writing. There have been times where I was faced with a problem and couldn’t find a solution. And I would tell myself, since I managed to solve it myself, I should write about it. 

 

What I do manage to do is learn new things, such as AI. I keep thinking about building a mini robot I could talk to, give orders to. I’m considering doing this as a little project with my son, when he’s a little older. I’ll look into it - I want it to be funny but educational. I’m also considering making a website with and about games and toys, since we have so many. I want to help my son broaden his creativity. To film videos and edit them himself. I think it would be useful down the line.

 

8. As a senior dev, what advice would you give a beginner web developer? What are the most important steps they should take in their career?

First of all, they should start with the basics. And by “basics” I don’t mean knowing HTML and CSS, but knowing how the web really works, because the communication between a browser and a server is done through a protocol. They need to understand what that protocol is, how data is transmitted, what that server is, what works on it. Basically, how everything works. If you, let’s say, start learning Laravel, and you simply follow its installation guide, at some point you’ll only understand the surface of things. After a while you’ll be hit with some things that are so basic yet weird, you won’t know how to proceed. And you won’t find it in the documentation either, because it was made assuming you already knew those things. 

 

Secondly, they need to read and practice as much as possible. If you’re a beginner, do a side project. A website that will get your mind going. Something complicated, even if you won’t use it - like an e-commerce platform, where you have to go through multiple stages of development. Then think about how to improve everything you made. Think about the way you can help yourself and your team through what you learned. Even if you’re not part of a team yet, you should prepare for this. You need to show that you can learn quickly, to help your team. Watching videos isn’t enough. Until you get your hands dirty and code, solve errors, find solutions, you won’t learn anything. Be your own project manager, tester, organize it all yourself, from tasks to PRs. Don’t expect to go into work and be taught like you would at school. Here, we encourage you to bring your ideas. As much of a senior I am, I don’t know everything. Don’t expect me to fill up 3 blackboards with info. You need to ask, search, read, all by yourself. Otherwise you won’t learn. You need to work hard and smart.