How I went from Construction to Coding 🏗💻

Algi
5 min readMay 1, 2022

--

My last day working in Construction (Left) and my first day working as a Software Engineer (Right)

The Back Story

My name is Alganit Tabir, or Algi for short, I graduated with a Masters degree in Civil Engineering and have worked as a Site Engineer since 2017. I worked in various construction projects and eventually became a senior site engineer in 2019. My day consisted of managing construction activities on site, checking material prior to construction, reviewing construction drawings and ensuring work on site was completed to a high standard.

The Turning Point

I have always been interested in technology and computers, but my day-to-day job in construction was more about drawings, concrete, people managment and anything else but computers. At the start of the pandemic I was made furlough for three months and I found myself with so much time on my hands. Of-course, I spent the first week wasting this time, but I quickly realised that I could use this time to better myself and possibly seek a new challenge. I started off by playing around with Raspberry Pis and dabbled in a bit of Python. I had no structure to my learning and I saw it as a side hobby.

The Motivation

When I returned to work I found myself less interested in Construction and more interested in Technology, in particular, Python. I began to use the Python knowledge I had learned at work. I was fortunate to have a manager who allowed me to follow this interest and use some of my downtime at work to study, as long as it had some benefit towards the work on site. Below are some of the small projects I worked on:

  • Automating site progress reporting using Python and VBA
  • Automating email to act as reminders
  • Automating sending site progress photograph according to location (not-Python based, but I used this a lot)
  • Raising awareness to fellow Engineers on the use of VBA to automate some of their reporting

My typical shift was a 12-hour shift and although I was tired, I had the motivation to code. I enjoyed the problem solving and computers fascinated me.Returning to work made me realise how much I enjoyed learning to code and that I wanted to be a Software Engineer.

The Journey

Although I had decided to start my journey to learn how to code and eventually land a job in the field, I did not know where to start. That’s when I contacted two of my friends, Abubakr and Adam, who were in tech and they introduced me to an online community of IT experts. This community guided me through the different pathways and would host coding bootcamps, which I attended and benefited from tremendously.

My journey to tech and learning process

Finding time

My ideal way to learn is in 2-hour blocks, this is what I was used to at University, but working 12-hours a day did not allow me to have 2-hour blocks to study coding. Instead I blocked out certain times during the day and studied in 30–45 minute slots. As I became more confident (and more passionate) I started to study an hour before work and an hour after work.

  • Before work (1 hour)
  • During commute (30 minutes). This was mostly watching videos or listening to podcasts
  • Lunchtime (45 minutes)
  • After work (1 hour)

My work pattern was two weeks night shifts followed by two weeks day shifts. So when it came to my night shifts, instead of the above schedule, I would arrive to work around 4/5pm and study for a few hours until the start of my shift at 9pm

I wasn’t always successful in sticking to this schedule, due to work and general life demands, but I made sure I would code everyday even if it was one line. Some days I wouldn’t be able to work on my laptop or phone so I would write my solution to a problem on paper and check the solution when I leave the work site — I just wanted to do some code everyday!

After I learned Python and completed my Azure Fundamentals I began to focus on projects. Every week I would work on some Python or Azure projects.

Where to start if you want to learn how to?

We live in a time where you can learn literally anything from the internet, especially when it comes to Software and Technology. However, due to the abundance of these resources you may find yourself, as I did at first, overwhelmed and unable to make a decision.

Having said that, there are many accounts online of people transitioning into Tech via the self-taught route and they all have one thing in common — a clear learning path. It’s important to set out your goals and decide where you are going to dedicate your time. Whatever route you choose just stick to it and don’t jump from one coding language to another or from one technology to another. I started with Python because I found it easier to learn and it happened to be (and still is) one of the most popular languages.

A helpful infographic to help in choosing the first coding language for yourself depending on its purpose and your interests. Credits http://carlcheo.com/startcoding

Websites

  • Freecodecamp
  • Codeacademy
  • Udemy
  • Tryhackme

Youtube

  • Programming with Mosh
  • David Bombal
  • Python Programmer
  • Network Chuck
  • Dorian Develops
  • Tech with Tim
  • Tina Huang
  • The coder coder
  • Tiff in Tech
  • Amigoscode
  • CS Dojo

Books

  • Automate The Boring Stuff With Python — Eric Matthew
  • Python Crash Course: A Hands-On, Project-Based Introduction to Programming — Eric Matthew
  • Python Crash Course — Eric Matthew

Thank you for reading. Please follow to keep up to date with my journey in tech!

--

--

Algi

Previously a Civil Engineer now a Software Engineer. Now Cyber Security Engineer