In this #LifeOfDevs we talked to our colleague Andrey, our Front-End developer originally from Russia. Andrey joined us last year and went on his first project, which is working as a Front-End developer for KLM at Schiphol Airport, the biggest Dutch airline. We are very proud of having him there.
Can you tell me how you got into coding?
When I was 13, I learned the programming languages Turbo Pascal and Borland Delphi at an after-school faculty. On the first day I was blown away by the sight of printed text on the screen, I felt like I had the power of God. My brain was exploding of all the ideas I had. With the help of my teacher, who noticed my interest, I got better and better. I used my knowledge of Delphi to write programs on paper, since the IDE was hard to get when I was younger. But when my father found a way and I typed in my code of the papers, I was so excited. Because my code was actually right and gave me the results I anticipated on.
In the following years I wrote several programs and games with Delphi and GLScene. It was awesome to spend my time after school on learning to code and I was able to play my own games! I feel like learning to code by writing games is the best approach, because I believe that everyone who loves computer games will love the idea of writing one of his or her own.
In my last year of school, my headmaster gave me an assignment to write a register form, which would be sent to him by e-mail. That’s how I discovered PHP and started my career in web development.
Can you tell me more about the company and what you will be working on at the project?
I guess, KLM doesn’t need to be introduced, so yeah I’m working for KLM as a part of the Digitizing E&M (engineering and maintenance) team. We have several projects, but with the same goal, to digitise all inner processes of engineering and maintenance at KLM. Currently, we are working on several mobile applications that will help the maintenance staff during their routine work everyday, like managing info about the flights for customers, checking aircrafts inside hangars, control Schiphol area for available lines, etc. None of these applications will be released anywhere outside of KLM, so you won’t see any result of my work, unless you’re going to be an employee of KLM, of course.
I’m mostly working on an application for mechanics who are doing the daily checks of all the aircrafts and make preparations before it can go on a flight. Previously they had to do a lot of paperwork and used a very old website to sync the data, but now they are using a mobile application on their iPads. This is something that really helps them a lot and increases their productivity and safety.
What is the biggest difference from working at the project with working at Competa HQ?
I would say, the actual place of work. We are working inside a hangar, there is just one wall between us and the huge area where aircrafts are staying like cars in a garage. The reason why we’re doing this, is to be constantly in touch with our users. Mechanics can come to us to give feedback on released features, check the progress for upcoming ones or complain about bugs that they found.
Each morning and evening I have to go through the whole Schiphol area, since our hangar is far away from the place which you might imagine as “Schiphol airport”. That’s just a brilliant adventure full of sightseeing every time, there are airplanes flying just over your head when I’m travelling by bus to the technical area, everyday through the sunsets, dawns, fog and rain.
But Rijswijk is also nice, and I miss the Competa HQ a little bit.
I’m assuming you are coding right now, can you tell me a bit more about what you’re working on?
I’m acting as a Front-end Developer, but sometimes it goes deeper than that. Our applications are actually web applications that are wrapped into iOS projects via Ionic framework, but there is just an Angular 2 core inside. So, usually that looks like web development, but I also have to deal with native iOS code, since our apps should implement some really native features. This is not mandatory, but since I have experience with building hybrid mobile applications, I show my skills here as well.
At the beginning, I just covered codebases with unit tests, but the team recently moved to the new version of Angular and Ionic and lost all of their previously written tests. Now it’s more complex for us, so every developer delivers new features and covers it with unit tests immediately.
Which techniques are you using?
All our applications are based on Angular 2 and Ionic 3 frameworks. For the unit tests we’re using a Jasmine framework. Since Angular is based on TypeScript, I learned it as well during this project. Some of the scrum teams are rewriting the codebase with reactive programming approaches, and that’s becoming to be a common intention in relation to use RxJs, so I started to learn it as well.
What is one thing you have learned at your project so far?
Besides everything I mentioned before, I learned that the true Agile process is able to exist and managers can be clever enough to run projects very well.
What does your average week look like?
Each day mostly the same, we have a morning stand-up, lunch at 12 and coding in between. Twice a week we have poker sessions for upcoming user stories and once per two weeks we have a closing sprint day on Tuesday. This day is mostly about meetings, closing the sprint, planning the next sprint, demo the released features and the retro.
The work hours are very flexible, somebody starts his workday around 7am, but everybody gets together before 9:30, stand-up time.
What skills do you need to have, in order to work for a client like KLM?
You must be ready to learn. I was actually surprised that they hired me, since the team is working on Angular 2 projects and I didn’t have any practice with it. Usually, if you say something like that to your potential employer, it means that you’ll be dismissed as a prospective employee. But here they’re checking not actual knowledge of fashion frameworks, but some more basic and fundamental things, like your ability and eagerness to learn.
And communication skills are very important to possess. When you’re part of a team at a huge company, it’s necessary to work along with all your colleagues. You may don’t like somebody as a person, but it shouldn’t affect the result of your work. This is something you probably put in your CV as a “good team player” definition, and that’s exactly what it means.
How do you keep in touch with your Competa colleagues?
Slack is the perfect place to be in touch with Competa every day. I don’t have the opportunity to visit HQ during the work times, since Schiphol is quite far away, but I’m looking forward to the next Competa meeting. Since the last Competa meeting was great! It was my first Christmas celebration in the Netherlands and it was great to spend a part of it with my colleagues of Competa.