Becoming a Software Engineer

Architecture phase

At university I thought, “Ahh 9–5 lifestyle — I’m going to enjoy this!” But in truth, I was only going to enjoy work if it was something I truly want to do so it feels more like a hobby than a job. I’ve always been interested in computers, but had never sat down to program anything before studying mechanical engineering; instead, I would jump on the Internet and find the latest game or Game Boy games to play with on my emulator.

I had a great time at university, but during my final year I knew that becoming a mechanical engineer was not for me. I loved the maths and IT sides of the discipline, but the hands-on stuff was just not for me. However, during my course, I started learning my first programming language, MatLab, which was fascinating: I had never seen this side of computing before, using algorithms to solve real-life problems. I was then introduced to Java by my lecturer, who could see I was enjoying programming, and he thought it was quite surprising that programming was not taught in schools.

I went off to play with Java and felt a buzz like I’d only experienced when solving mathematical problems. But as soon as I graduated, I thought, “What should I do now? I don’t want to be a mechanical engineer, but at same time, I don’t want to be jobless.”

“If somebody offers you an amazing opportunity but you are not sure you can do it, say yes — then learn how to do it later!” Richard Branson

I did what almost every graduate did: looked for links into my degree’s industry — mechanical engineering — although this was not my passion. Yet while I was doing this, one thing remained constant — I was still working on my programming skills.
I was building small games, trying to get my head round Object Orientated Programming, GUI and the basics of computer science. By this time, it would have been wise to try applying for a developer job, but I was too wrapped up inthinking I needed a computer science degree. Then I had a call from a recruiter, who was very helpful and said my belief was mistaken. “If you can code,” he said, “You can do the job.” I don’t know if he was saying that for commission, but I took it on board.

Development phase

I can’t recall when or how I applied to Cohaesus, but I remember the interview stages very well because they were different to what I’d been used to. During my call with one of the technical directors (TDs), we had an honest conversation, which included technical questions and a genuine interest in my future. The on-site interview was even better, when I got to meet the team. I was completely blown away by how the company wants their people to grow with them. There is a real ethos of being a people’s company at Cohaesus — producing quality products for people, with quality people producing the products. I was happy and nervous when the offer came, but 100% ready for the new challenge.

When you start a new job, all sorts of things go through your head, like, “Is this right for me? Will I fit in? Where do I start?” Those questions were certainly playing on my mind from the moment I was offered the job for trainee developer. I love problem-solving — I mean, what developer doesn’t? There’s just no better feeling than being given a challenging problem — even one you think you can’t solve — and then breaking it down and finding the answer; there is no better feeling and it is a real sense of accomplishment.

Well enough of wanting to impress. I thought the hours I put in atCodecademy and New Boston YouTube channels would suddenly make me an expert programmer. Well, that wasn’t everything.

Don’t get me wrong, this is very useful experience, but that’s only the beginning of the incredible world of programming. I have to say from when I started to now I am very much proud by my growth in terms of my technical knowledge, I am improving in writing code and have a much better understanding of software development.

I can remember my first day well, seeing one of the juniors talking to me about Sublime Text and its awesomeness and one of the associates talking about their favourite integrated development environment (IDE) to work with. All this I’d vaguely heard of, but had never given them a try; I’d been content with Eclipse and Notepad++.

Continuous Improvement Phase

Working for Cohaesus has been an exciting, challenging and fun experience so far I’ve been shown how each project is managed, how developers, admin, TDs and clients all communicate together before, during and after the project cycle. This is an excellent system for software engineers, as their job isn’t just about writing exquisite code, but also about understanding project management and laws, technical debt, teamwork and communication between all involved with project.

But what I enjoy most at Cohaesus is the TDs’ sheer passion and excitement: you can instantly tell they love what they do and are willing to share their knowledge with you. I value this, as I’ve wanted to have a mentor who can push me, keep me on my toes and answer my questions. And it’s not just the TDs who do this — I’ve seen inspirational associates and juniors too.

Cohaesus has changed my view of a job completely: work doesn’t feel like work, but more like a new hobby I’ve picked up, where I’m continuing my learning curve in the world of developing awesome software. The experience has been better than I expected, amazingly positive. Every day I’ve learnt something new and I’m gradually coming to know what it means to be a good Software Engineer.

Author : Kunle Ogunjimi

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.