From Physics to Software Engineering – building a non-traditional career path

Automatic Summary

The Odyssey from Physics to Software Engineering

Welcome to my journey into the world of tech. I’m Anastasia Manner, a software engineer at Quantum Black. Today, I'd like to share my story from physics to software engineering. It involves self-exploration, countless learning experiences, failures, and successes. Let's dive into the fascinating path I underwent to become the tech professional that I am today.

Start of the Journey: Choosing the Right University Course

Coming from a first-generation Ghanian family in Southeast London with a low socio-economic background, choosing a technical subject at university was akin to breaking barriers. Like many children of migrant parents, I was given a template to follow - excel in a STEM (Science, Technology, Engineering, Mathematics) subject and find a stable, well-paying job. With a natural inclination towards maths and problem-solving, I was drawn to physics. My love for understanding how things interact with each other, led to university studies in physics.

The Turn Towards Coding

Entering the world of coding seemed like jumping from the Bronze Age to the Industrial Revolution. While studying physics modules at university, I was introduced to Python, a coding language. To my surprise, I found joy in utilizing a programming language to solve equations and build processes. Despite finding it intriguing, the decision to transform it into a career wasn't immediate.

The Hard Reset: Master's Project and Code-Based Master's Degree

As the final year of university approached, I realized I needed to narrow down my interests. Noticing that I had very little experience in coding, I decided to dive in one more time. My master's project was my leap of faith into code; an algorithm-heavy, Python-based research component. It was difficult, but also gratifying. By the end of the project, it was clear to me: software engineering was my path.

Entering the World of Software Engineering

After graduation, the transition into software engineering required patience, persistence, and a significant amount of networking. With less coding experience compared to others in my field, I had to utilize every trick in the book. That boiled down to:

  • Applying to grad schemes.
  • Reaching out to people associated with companies I was interested in through LinkedIn.
  • Getting my work reviewed by professionals in careers offices.
  • Attending career fairs and company expos.
  • Utilizing all non-technical experience.

After an intriguing journey marked with countless hours of job applications, preparations, networking, and taking full advantage of my non-technical experiences, I finally started my software engineering career at a bank. As part of the role, I received three months of intensive training in Java and then dove into day-to-day coding work.

The Mentorship and Personal Growth

Transitioning from a physics background into software engineering demanded a significant amount of after-hours learning. Fortunately, I had a mentor, manager, and a supportive team who guided me on my journey. They underlined the importance of constantly expanding my knowledge beyond office hours. From HackerRank, LeetCode, to YouTube learning and personal investment in learning the fundamentals of computer science, every bit contributed to my growth.

Pursuing AI and Machine Learning

As I settled into the world of engineering, I felt an itch to take on more analytical problems. I decided to explore the fields of artificial intelligence (AI) and machine learning (ML). I found the opportunity to advance my understanding of AI and ML through a master's course at Queen Mary, London, sponsored by the Office of AI and Quantum Black. I jumped at the chance and was fortunate enough to be selected for both the course and sponsorship.

Quantum Black: A Blend of Creativity, AI, and ML

The master's course gave me a sound foundation in AI and ML. I found an opportunity to blend creativity and learning in AI through my master's project, which focused on procedurally generating platform levels in augmented reality using genetic algorithms. Following this, I landed an internship at Quantum Black which converted into a full-time role as a Software Engineer. I now utilise AI and ML in my job, making my path even more exciting.

Key Takeaways

Reflecting on my unique journey, I want to share some tips and tricks that I wish someone had told me early on:

  1. Cultivate your non-technical hobbies; they could be your way into an interview.
  2. Look for technical schemes, internships, and educational opportunities.
  3. Choose mentors you genuinely connect with.
  4. Keep a study schedule and stick to it for focused learning.
  5. Prioritize a healthy lifestyle; it contributes tremendously to your cognitive capacity.
  6. Enhance your LinkedIn profile; it's your online resume.
  7. Learn one codign language well.
  8. Be flexible and ready to adapt to new situations.

Conclusion

So, that's my tale. From a low socio-economic, first-generation Ghanian background to a software engineer specialising in AI and ML - it has been quite a ride. I hope my story inspires you, proves that passion and dedication can transform dreams into reality, and emboldens you to take the road less travelled.


Video Transcription

Hi, everyone. My name is Anastasia Manner and I'm a software engineer for Quanta Black. And today I'll be discussing my pathway from physics to software engineering.So I decided to give this presentation maybe because I wanted to reflect on my milestone, see the successes and failures and kind of inform others on their journey into tech. So I'm gonna start talking a little bit about me my pre university stage. I guess what I did at UNI and how I chose and prepared for my career and what I learned along the way. So a little bit about me. Um I'm a first generation Ghanian. I'm born in Southeast London. Um I came from like a low socio-economic background and although I wasn't the first to go to university in my family, I was the first to do a technical subject. So similar to most migrant families from West Africa, I had a, I had a career template to follow. I, I do well in school, I study a stem subject in university, possibly, maybe go on to a phd and then go and get a well, well paying job and not disturb your family financially. So, with this template. I kind of somewhat followed it, you know, I decided, ok, although I wasn't forced to learn any stem subjects, I should probably do something like that. But I wasn't really clear of what I wanted to do. I was good at a lot of things, art, sports science.

I was averagely above average in the things I tried to attempt. But I loved maths and I loved solving puzzles. I like the fact that it there's like one correct answer, but there's many ways to get that correct answer right. But I also liked being creative. And before university, I kind of did a lot more creative and non technical stuff I would say. But when it started to come to apply to different places, I realized maybe I should pick a stem subject because it's a little bit easier to pick stem and then go into something created afterwards rather than doing the other way around. So I decided I wanted to pick a stem subject which allowed me to somewhat keep my options open. Um And what I chose was physics. I was interested in why things existed and how they interacted with each other. And I generally thought if I understood physics, I would understand the majority of the other sciences and kind of hold the key to all knowledge basically. So I started in college around that time doing or start to explore some stem opportunities. I went to one electronics workshop at one university I applied for this Gold Crest award scheme which I actually did physical like research um placement work above Upton laboratory in Oxford. I found it was really interesting, it kind of solidified the fact that I wanted to study physics.

So then I applied to do physics. Um So I went to university study physics. It was interesting, I was building my analytical mind solving equations learning how things work and building experiments thinking critically about problems. And then I got introduced into computing. There was two modules, there was one called computational physics or computational techno techniques for physicists. And there's another one called um numerical methods as well. So during these two computational modules, we were learning how to use Python to solve different differential equations.

I guess um Monte Carlo simulations, et cetera. And I really liked how like I could answer problems a lot faster and compared to like handwriting solutions or drawing graphs. And it kind of made me feel like I was going from the Bronze age to the industrial revolution. But I was still kind of unsure whether I wanted it to be uh a future career path. So I generally thought OK, I'm studying physics. I'm probably gonna probably gonna do a phd afterwards. All I really need is my physics degree. I'm sure someone will come take me afterwards. So at the same time, I was kind of doing a lot more non tech stuff, I guess I was, you know, I kind of expanding my creative hobbies. So I was like a graphic designer for a committee. I did dance. I was rollerblading, did a bit of figure skating, did a bit of drama. I was like an extra in a couple of movies and waitress in retailing, kind of a lot more non technical experience that I had. And when it came to my final year, I guess my penultimate slash final year, I realized that OK, I need to start being serious. What area of physics do I want to go into? Do I still want to continue doing physics? And I realized maybe the computational stuff that I did earlier on, maybe I could actually do something with that. But at this time, it was a bit late. I had like zero based internships, like code based internships at all.

Like I did a bit more laboratory work, I guess. And um I worked at the National Physical Laboratory um on a like biotechnology project, but it was purely like lab work. There wasn't any code included. And I felt that if I did want to do something code wise in my future, I should probably do a little bit more code than the couple of modules that I did. So I decided to go all in and base my master's project on some of that's code based. So my master's project was in um modeling the sarcastic volatility model using the metropolis Hastings algorithm and the Hamiltonian Monte Carlo algorithm as well. And comparing with the um efficiencies of both of them and it was extremely hard. It was completely in Python. And I didn't have no clue what I was doing because I had a bit of experience with Python with the modules but no software engineering experience. No debugging experience.

It was a lot, but I still enjoyed it. And I realized that this, I think this is something that I wanted to do. So I decided after university, I think software engineering is what I want to do. I did well in my computational courses, two companies came to my university to speak Jag X and a different movie special effects company. Um And I absolutely love Jag X because they created Rescap and I used to really enjoy playing Scape at the time and they had physicists that turned into software developers come and give a talk to us. So I was just like if they can do it, I can do it. And it kind of showed me the diversity of the work within software engineering. But like I mentioned previously, I didn't have much coding experience. So by process of getting into software engineering is as follows. I applied to a lot of grad schemes and I really made sure that I checked for the grad schemes that um allowed noncom computer science degrees. So they usually say something like, you know, stem degrees, welcomes or whatnot. Um Then I ensured that I, you know, I made sure that I did my research, my documentation and preparing.

So when it came to research, I kind of re reached out to people that worked at these companies on linkedin, I realized that networking and actually meeting people face to face was really, really important when it came to trying to get my foot in the door because I knew my CV wouldn't be as amazing as someone who's done a lot more technical projects.

Um I went to career fairs, I went to Expos. Um I think I even mentioned, I think I even saw in one of my diaries that I had like a breakfast at one of these companies. Um just literally trying to talk to people and seeing how easy it would be. For me, someone with not much technical experience to get my foot in the door. One thing I also try to do is obviously research how these companies stand out from the competitors, but also research what the company might be failing that in terms of like technology and why you still would want to work with. I think a lot of people tend to focus on, oh, I love that this company has done this, this, this but don't necessarily focus on, oh, though this company might not be doomed as well in this, I still wanna work there. And I think that's quite powerful to mention. Sometimes you can get this information through like Google alerts and stuff like that. And I remember consistently having my Google alerts um activated for these companies I um applied to. So I can just be up to date with the news that they were um giving me. Um I also documented everything I prepared every single response possible and ensured that um my successes and failures with these interviews were consistent um consistently updated in my documentation.

I had like a 1415 page word document that I wrote all my experiences in just so that I can learn basically my um what I was doing correct or what I was wasn't doing correct. And when it came to preparing, I sure, especially when it comes to the technical part because I think that's quite hard when you haven't had that much experience. I use leak code, hackerrank geeks for geeks, any free online resource. And I also ensured that I got my work consistently reviewed by like the careers office or someone I knew that I was working in that field just so I can be kind of assured that OK, I'm on the right path. I also ensured that I utilize all my tech, non technical experience. I think when it came for to the non technical part, the only thing I could really be confident in is all the non technical experiences that I had. Because every single experience that you kind of accumulate or any single school that you could accumulate can always be um a, a key to uh a possible next interview or something. So I had my graphic design work. I had my rollerblading figure skating. I was learning Japanese and a bit of French. At the time I did some charity work for um uh educational um company and I did a bit of business consultancy.

And I remember for one interview specifically, I remember mentioning that I did rollerblading and they picked up on that and they said, oh, that's amazing. I, you know, the the person that was interviewing me, she was on a roller derby team and she needed an extra person to um join the team. And I was like, oh, that's amazing. I roller blade and, you know, roller derby is usually roller skating. Then we started to discuss like the differences and how fun it is basically to do the sport and those types of connections are really important because it kind of keeps you memorable, I guess. Um And obviously from that opportunity of, from that discussion, I did manage to obtain the opportunity. And the thing is those small things that kind of make you that allow you to kind of get ahead of the game, especially if your technical experiences aren't as smart. In my case, II, I was um I knew one code project very well and that was my master's project. So I tried to ensure that I understood that back to far up to down because understanding the algorithms and the logic into how that project worked and being able to explain that to somebody was extremely pivotal and extremely important.

Because a lot of the times when you apply to these companies, they're really looking for how you think and how you logically break down the problem. The actual technical experience can sometimes just be learned on the job. But as long as you have some exposure to that and your analytical mind is exactly what's been showcased in these interviews, the more likely to be um want to take you on. So I'm sure that I understood that one project well, and to be honest, I only had one project. So I thought I might as well. And alongside that, I think it was really important to have the confidence. If I didn't have the confidence to speak, I wouldn't be able to um basically do any of the things above as I mentioned. So I did all these things I applied to different places. I managed to get on to three kind of opportunities. And then I took one of them that was at a bank. Um Mainly took that one because they had like a technical boot camp beforehand. So they gave me like three months of pure Java training and then kind of rolled you into a position. So that's kind of how I got into the the job, right? I, I did a whole bunch of research, I, I tried to see as much fast, fast tracking of assessment centers and whatnot and then I just prepared and I got on to the job.

So now I'm coding every day debugging, adding new features to the application. I did a bit of fun and engineering back in engineering. Um I was supporting application as well as learning about the architecture of the system. And what really helped me was having a great mentor, a great manager and a great team. They, they understood that I was coming from a physics background and they ensure they kept on ensuring um and kind of integrating into my brain, the importance of personal learning outside of doing your 9 to 5 or 9 to 6, learning about the core, like computer science stuff that I didn't actually learn about.

Um after work would be pivotal for me to move forward and for me to excel in my role. So that's kind of what I did. So after I would code every day and after I would kind of learn the business side as well as software engineering and software development. I went home, I continued to do the hacker bank, the Liquid question. So I was going through books, like coding, um cracking the coding interview and uh design patterns and domain design patterns. And following people on Twitter, like tech, people on Twitter on social media websites or even watching um videos on youtube. I kind of tried to ensure that I was integrated and into the whole software engineering kind of domain and learning as much as possible and physically, you know, writing code and not just doing the theory. Um I, I was also ens ensured that I did a lot of internal hackathons and external hackathons as well as different side projects at work that weren't related to my domain. So I can just absorb everything as quickly as possible and keep myself up to date compared to my fellow, I guess employees that came from computer science background.

Um And then later on into my um my, my, my, my job at this uh at this bank, I realized I kind of wanted to work on different problems and use software engineering in a little bit of a more analytical way. So I kind of looked into artificial intelligence and machine learning and that's kind of what I wanted to do next. I kind of tried to look for opportunities like this. So this was kind of like 2019, early 2020. And as we all know COVID happened, so I was trying to look around um internally and externally for these types of positions in A I and ML but it was really hard without a master's or A phd in the field. So again, I was at a situation where I didn't have the experience I needed in order to get into the next world that I wanted to get into so I realized I might have to do like a quick course, something that was preferably cheap or free because I didn't really want to, like, leave my job during COVID times to, you know, um, study, um, something again because that was, it's a really, you know, financially, it was a really difficult time for, I guess, for most people.

So I started looking around and started trying to find a structured program in order to learn A I and ML. And that's how I came across a master's program at Queen Mary. And sponsorship that was offered by the office of A I and Quantum Black. So I took this opportunity, I applied for the scholarship applied for the program. Got both. And throughout COVID, I basically started and completed my masters. It gave me extreme good basics for understanding the underlining core principles of A I and ML. And also allowed me to, allowed me to explore some of the creative side of A I and Mr because my, my master's project that time around was basically procedurally generating um platform levels in A R which was extremely great using genetic algorithm algorithms. And that was really fun to learn. And after this opportunity um of studying I then interned at um quantum Black. And you know, now I'm here, I'm a full time um software engineer for quantum Black. And one thing that I realized is that this is not necessarily the end of my story I really think it's really important that, you know, you're continuously learning, you're continuously um adjusting and pivoting and ensuring that you're, you're keeping your skills up to date.

And my next steps is maybe to go into doing a little bit more machine learning engineering or data science or whatnot. But as long as I'm in an area or a uh a company that allows um me to grow in like, like that such as quantum black, I feel like I'm definitely gonna be on track to reach my goals. So these are some of the lessons I've learned and things I wish I did. So, one of the main things is cultivate non-technical hobbies. I think for all of the opportunities that I've had, I've always managed to get a way in through discussing one of my non technical hobbies. Um My next um piece of advice is try and find technical schemes. So by then, so I mean, like grad schemes or like um internships or possibly um like uh technical communities that allow you to kind of do courses and get some sort of experience for like for free or maybe if a paid experience, I think it's really important because it kind of helps you give by giving you that support whilst you're learning.

Um And yeah, and that's, I think it's quite important to do that and mentors should be people you have fun with. I think I've only had one official mentor that I can remember that I still keep in contact with now. And that's the person I met at the bank and he's just a really fun person to talk to and be around. And I think it's really important, not necessarily always to just find the person with the most experience. And that's it. You must have like a genuine connection with them so that these meetings that you have with them can be a bit more genuine and a bit and be a bit more long lasting. Like, I'm still learning stuff from my mentor and I met the person in like 2018. Um also prioritizing and schedule learning and stick to it. I technically have a plan that I always follow. So I, I use this website called Get Revising, which I've used since like my a level times and I kind of manipulate it to kind of work with my current uh work schedule and I literally plan every single day. Um what I do and what I learn because I also do a lot of like extra stuff outside of work. But having that plan just there, you don't necessarily have to be stringent and stick to it all the time.

But having that plan and learning, um just put in a diary so that you can be so that you can kind of track how much you're learning is very, very important. Um Exercise and diet feeds your mental capacity. It's really important and I think a lot of people tend to forget this, but you learn more when you feel better and, and your diet is good. And if you do wanna progress fast, you do have to ensure that there are other areas of your, your being is kind of um kept up to date because it's very easy to kind of slack in one area and excel in one area. But if you really want to progress far in your career, ensure that you're taking into account all these other um additional um areas that not, not necessarily technical specific, um spruce up your linkedin. It's very important because recruiters consistently go to your linkedin and try and search for your latest experience or your interactions or people that you're connected with on and what not. It's very important so that, that looks good and that they can clearly identify that you're a good candidate.

Um One thing I wish I did was stick to one language and learn it well in university, I learned Python in my, at the bank. I learned Java. Now I'm learning Python again. I think it's, if I stop to Python from the beginning till now, I definitely would have been quite an expert in that. Um So I think that that's one thing that people should do, get career advice as much as possible. Um And also bargain with your reality of it, right? You, you don't really know what's gonna happen in the future. But as long as you're um willing to take that risk now in order to kind of gain something in the future, I think it's something that you should definitely take and, and be at risk. But yeah, so that's my um presentation. If anybody wants to follow me on Twitter, I believe I have no, not Twitter. Sorry, I'm linkedin. I have my um linkedin address on my profile things. So, yeah. Thank you all for joining me today and I hope you have a good day.