Louise Meredith
Engineering at Alfa
4 min readMar 20, 2019

--

My experience of learning to code at Alfa

When I started working at Alfa two and a half years ago I had a degree in biochemistry and absolutely no coding experience. Back in those days, if I accidentally opened Chrome’s developer tools window on a website, I thought something was horribly broken. Think Jen from The IT Crowd being handed ‘The Internet’. If the Elders of the Internet did exist, they most definitely did not know who I was.

Two years on, and Chrome’s developer tools are now a helpful development aid, and my Java coding ability is much improved. I’ve come a long way in that time — I’ve moved on from being a Consultant to being an official Software Engineer — and everything I know now has been learnt on the job.

So what was it like joining Alfa and learning to code on the job with no previous experience? And what are the advantages and disadvantages to this approach if you want to be a software developer?

Learning, learning and more learning

When you’re being paid to code, you need to learn to code pretty quickly. When I first joined Alfa I had three months of intensive induction training. In this time we covered the basics of Java, the development tools used at Alfa, and how a software company operates in general. On top of this technical information, we also learned about the asset finance industry and what our software actually does. You can’t update and edit a piece of software without knowing what it’s supposed to do after all.

Alfa places great confidence in its recruits, so after this training I was put straight onto a client team working for a large Scandinavian bank in the User Acceptance Testing stage of a project. Within a couple of weeks, I was flying out to Scandinavia and interacting with the client team directly, helping them to use our software and solving issues they were facing.

There was a lot to learn and this was all quite daunting but, equally, being challenged and trusted so much was great, and the intensive learning process made it feel like I’d achieved a lot every day.

It’s a continuous learning process

The sheer volume of things to learn has meant that since joining Alfa I’ve never stopped developing. I’m lucky to have very supportive colleagues who are always willing to help me out and explain things patiently. This is so important when you’ve been thrown in the deep end, and is something which I think Alfa excels at. I feel comfortable messaging anyone in the company asking for help, even if I don’t know them.

In a company where there is a vast difference in ability and experience even at the level of an individual team, good management and a strong support network is crucial.

Outside of the day job, there are a few things which can help you when learning to code on the job. Here are a few suggestions:

  • Small team breakouts on various technical topics
  • Continued technical training through internal and external courses
  • Pair programming and code reviews
  • Attendance at technical conferences
  • Voluntary after-work group projects and learning sessions
  • Sponsored qualifications; for example, the OCA and OCP exams for Java
  • One-on-one mentoring/teaching sessions

What are some of the advantages of learning to code from scratch on the job?

  • You can learn while earning
  • There’s less need to spend your own time learning
  • You’ll be in direct contact with experienced software developers, who can help you
  • Your background will bring a different perspective to the company and to the work
  • Learning under pressure can be exciting and motivating
  • You can learn by working on real problems rather than simplified training projects (which are not representative of the coding you will need to do in a job)

And some of the disadvantages…

  • You may be at a disadvantage to those with a formal education in computer sciences
  • Learning one specific language that a company uses may pigeonhole you into that language
  • You may pick up habits unique to that company which are not used elsewhere
  • You will be exposed uniquely to that company’s way of doing things
  • It can be more stressful learning under more pressure (if this doesn’t suit you)

In summary

Learning to code on the job has worked really well for me — I’ve found a good niche at a supportive company which provides me with the development opportunities that suit me. If you are set on becoming a software engineer but have no experience, I would recommend this path. However in the meantime I would advise spending some time doing an online course such as those at CodeAcademy, or reading a book on the language you’d think you’d like to learn. If you have some idea of what sort of thing you’d like to develop, use this to tailor your learning and which jobs you apply for. For example, you can decide if frontend, backend or full-stack development most appeals to you.

Good luck!

--

--