Programming the Way I Did When I Was a Beginner

F-Secure Life, Security & Privacy

This is a guest post from F-Secure fellow Kamil Janowski.

Have you ever worked on a project that aims to satisfy everyone – everyone, except for the developers who have to develop it?

On one hand you want to create something that looks nice and fast, so that the product can attract new customers. On the other hand, you have to support Internet Explorer 6. Once you accept the fact that your front-end code will not look as fancy as you wish it did, you still keep telling yourself that at least the back-end will be okay. And that’s the moment when they tell you that the whole server side of the application is written either in Java 5 or 6, depending on the module, and there’s no way you can upgrade the Java version because there’s one customer that refuses to upgrade his ancient version of Tomcat. You try to open your project in Intellij Idea, since your company provided you with a license for it. But it turns out that the project needs to be built by an in-house customised version of Ant and Idea simply doesn’t support it. But the in-house customised 3-year-old Eclipse does. So you try to implement a new feature. Then you find out that the whole application is based on an in-house developed framework that is not documented anywhere. And – best of all – nobody has updated it for the past 5 years.

If this isn’t the first project you’ve ever worked on, this exact moment when you probably begin to realize that your job is not exactly what you were promised.

You might be surprised how easy it is to find a project where the legacy solutions kill the project slowly, as more and more developers just refuse to work on it. It’s almost harder to find a project that that doesn’t end this way.

I love coding. I always knew I would study IT even before I went to high school. It always feels amazing to create something from nothing. However though each new creation not only satisfies, it also generates the hunger for more. Your customers want to receive the product faster and you also want to create more and faster. While the “more” part is fairly simple to achieve, the “faster” is a challenge. “Faster” requires you to constantly extend your knowledge and reach out for new, better technologies. Unfortunately, in order to be able to do so, you usually have to apply for a job at some start-up company, what is not necessarily an optimal solution for everyone.

F-Secure is different, though. At F-Secure, people realise that some things get old and that certain solutions that were pretty good several years ago might aren’t the best options anymore.

The project I work now was launched the way most other projects started back a while ago: Java 6, JSP, monolithic architecture, JavaScript limited to the absolute minimum. These days we run the application in the Amazon cloud, a large part of the project has been re-written as micro-services in Node.js. UI runs on Angular and developers are now considering upgrading to a newer version of it.

At F-Secure, you’re not limited to development that involves an 8-year-old version of Tomcat or a extremely old Internet Explorer or a single IDE. If you can prove that a certain new solution is better, you can make it happen.

F-Secure allows me to really enjoy the programming the way I did when I was just a beginner and had no idea about realities of the IT world whatsoever. Utopias obviously don’t exist, but F-Secure, which keeps getting listed among the top 10 employers in Finland, gets pretty close. And I, as a developer, can really tell the difference.

Find out about the dozens of cyber security job openings we’re filling right now.

0 Comments

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

You might also like