Joy of playing with virtual Legobricks
There are IT generalists, and then there are IT specialists. Freelance consultant Mads Skagen is in the latter category. Since his student days he has had a 'thing' for Java and today uses it to handle most of his professional tasks. Here, he describes his career approach, Java's undeserved reputation as a security risk, and why admitting a mistake is no big deal.
When freelance consultant Mads Skagen was a young child, his parents offered him the choice of money to buy a Commodore 64 or a BMX bicycle. They could not afford both, so he had to choose. Mads Skagen picked the Commodore 64 and subsequently spent many hours playing the legendary games and hacking into them too, so he could cheat and e.g. get a few tracks ahead in Bubble Bobble. On holidays touring southern Europe in the family's Volvo, Mads Skagen spent many hours on the back seat, scribbling code onto a piece of paper, which he later loaded into the Commodore as simple animation and administration programmes.
"Not too long ago, I stumbled on some of these programs. This was before the Internet, so I had to read up the code in printed magazines and then type it in on the Commodore," Mads Skagen says with a smile.
He has always known that he would like to make a living from his passion for computers and programming. He enjoyed being the person everyone came to with their IT problems, but he also found it challenging to work in a digital universe in which solving complex problems entails playing with the right high-tech tools.
"I loved playing with Lego bricks when I was a boy. Writing code is almost like playing with virtual Lego bricks for grown-ups. When I finally resolve a really tough challenge, this gives me great satisfaction. I don't really want to be the guy who solves people's printer problems. The problems I tackle need to be complex and difficult, even though it can be a bit of a mystery getting things like printers to work," says Mads Skagen about his own fascination with programming.
Very keen on Java
There are plenty of complex problems in his current assignment for ProData Consult at a large financial enterprise. Here, he handles various types of programming tasks that are very important to the customer. This might be programming concerning the implementation of anti-money laundering legislation, new requirements concerning international transfers, or the integration of new security solutions. Virtually all of these challenges are handled with the help of Mads Skagen's preferred programming tool, Java.
"I use Java to solve 90% of the problems I encounter when I'm out working for customers. I really like this programming language."
"I've had assignments on the .NET platform before, but this has never really interested me in the same way as Java. Even though the languages are very similar, all the libraries and tools are different. As far as I'm concerned, Java can do everything I need for this particular customer," says Mads Skagen.
"This is probably also a question of habit. I originally trained as a computer scientist, with Java as my primary toolbox during my studies. So when I face a problem today and have to quickly choose a technology, I naturally go for what I already know. It's all a question of being an effective consultant. There's no time to experiment for the customer's money."
Offering relevant knowledge
The assignment that Mads Skagen is currently immersed in is a security project in which he has to get the older technology in the customer's core system to interact with the Java layer in an online banking application.
"This is pretty clearcut task, but it does actually require a lot of coordination and communication between various people with very different backgrounds. The customer has drawn up some requirements of the solution and it's my responsibility to get everything to work together across technologies and layers of the technology stack, with the Java platform as just one of them," says Mads Skagen.
As a consultant, you cannot always know everything, which the customer also understands. But as Mads Skagen emphasises, the consultant role also requires that you have relevant background knowledge within, in his case, Java technology, and can thus help to find solutions.
"The challenge lies in how the customer often asks about the technological details in relation to their own installation. Deep technological know-how is therefore needed, to be able to offer professional sparring. In my view, the freelance consultant must invest in attaining this deep knowledge, to be able to offer competent advice. I stay abreast of Java technology by attending conferences, viewing talks on the Internet and also by attending ProData Consult's own events. They're pretty good," says Mads Skagen.
Security improvements in Java
As a Java specialist, he often has to hear about the technology's alleged security breaches. Now and then, Java makes the headlines when companies or security experts point to obvious Java risks regarding use of e.g. NemID.
Paternity leave in Asia
Mads Skagen has been a freelance consultant since 2010. Prior to that, he spent many years working for a successful IT consultancy. This was a good and very instructive environment, but there came a time when Mads Skagen felt the urge to break free that is the motivation for most freelance consultants' move from employee to independent contractor.
"It's hard to say what the precise attraction was, besides the wish to see whether I could make a go of working for myself and whether it could work out for me. Time has shown that this was the right decision, so that right now I can't imagine doing anything else," says Mads Skagen, whose present contract expires on 1 September 2015.
"I recently became a dad for the first time, so my wife and I are considering a tour of Asia for a few months during her maternity leave, if possible. We'll have to see what happens, since being an independent contractor also means that you have to be available when the work is offered. So I'm always on the lookout for new assignments. You never know what might turn up, which is also part of the fun of being a freelancer," he says.
Tip: Don't be afraid to admit mistakes
A key aspect of the consultant's relationship with the employer is to provide a professional service that creates value for the company. Yet once in a while, for some reason or another, a mistake may be made. This has also happened for Mads Skagen and in his view, it is wise to always be open about any mistakes, instead of trying to hide them.
"It's unprofessional not to speak up if you've made an error. Especially in live situations, since those responsible need to know exactly what the status is, without any surprises. If you're good at keeping your immediate managers updated – even when the news is bad – I often find that this openness will be valued and will pay off in the long run," says Mads Skagen.