Over the past few months I’ve been increasingly worrying about my career prospects as a software engineer. My concerns are due to my personal background and my current position of work.
I graduated as an electrical engineer (Electrical Energy Systems) in 2016. For various reasons, i ended up working more of as software engineer during the past 3 years. Initially worked in a small company during the summer, doing simple electrical work, to the realisation of a sensor testing station using raspberry pi, python etc in summer breaks.
And then another small company were myself and another person designed and implemented a system from scratch for them. Can think of it as a typical data collection, display and processing. From sensors, to web interface. The web development side of things was outsourced, and everything else i took care of, from hardware to comms, software firmware etc.
I did this as an electrical engineering graduate, with some passion on programming and computing, just researching online and learning through tutorials on topics i'd never worked on before.
I am still currently directly employed by the company i spoke about. Now been working in this project for almost 3 years. We are still developing and taking care of the system in all aspects.The issue is that i've started to worry a lot about my future, especially as i engage more and more with other companies and professionals. I feel like a hobbyist amongst professionals, and i think if I were to try and find a new job i would have to scratch everything i've done and start again from square one for multiple reasons.
- I can't qualify myself as an electrical engineer (although that’s what my master degree says i am), because i have zero experience on this area. I also can't qualify myself as any of the jobs i've been doing in the past 3 years, because i do not have enough knowledge and/or experience to do so (Networking? back end developer? software engineer? firmware engineer? etc)
- I lack standardisation and good practice in programming etc, due to the nature of work i've been doing. I've very simply put, been trying to get things done since the Monday after my last University exam. Zero guidance and procedures/techniques, just myself trying to learn and get things working asap, as the project developed. Hence, i feel like i've just simply learned how to solve specific problems, rather than understanding the subject, and gained the required background knowledge.
- I am very well respected within my company, well paid for my area. However i am also put under lots of stress, because the company does completely rely on me for any technical aspect, while i feel like i am not even able to deal with situations properly (again due to lack of background knowledge etc).
- I want to work as a software engineer, or similar, in the future. But i do not think any company would hire me for this role as of now. within this area, my knowledge and experience is actually pretty limited. I've only worked with python in terms of languages, and never even used any proper version control software other than github for backups.
- I have touched on many different aspects of "computer science", but never had enough work scope in each of the topics, to gain enough experience on them (if that makes sense?).
I do not think of myself as a failure, and i do know that i have valuable properties. I am good at problem solving, and organising my time and resources to achieve a goal. Also not scared to look into new topics and tackle any technical challenge posed to me. I do have a good understanding of the full picture, but from a high level point of view. And good at interdisciplinary kind of roles.
Given all of the info above, my background, my experiences, my defects and qualities you can retrieve from all of the above, do you think i can work as a software engineer in the near future? Do you think i would be a valuable asset to a company well-structured etc? From you perspective as a professional software engineer, or hiring personnel, do you think i can achieve this goal? Any tips on how i should move forward?
I want to add that i did request multiple times, to my company, to hire (or at least temporary contract) a more senior technical figure, to help me figure out the problems i have been facing and help my career development also. Did not happen. I've also asked to be sponsored for a part time master in computing science, which i may be able to start sometime next year. Not clear yet what the company position is regarding this.