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.

Current Position

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.

  • 7
    Please shorten this question. This is odd case where there is WAYY too much information. This question also super opinion based – SaggingRufus Dec 5 '18 at 16:28
  • 3
    Seriously TL;DR – Peter M Dec 5 '18 at 16:29
  • I don't have the time to do this myself cause I'm at work, but whole paragraphs of your text can be stripped out. The entire introduction for example can be made in 1-2 short paragraphs max. Please consider doing this as there's really too much detail. And, welcome to the Workplace! – rath Dec 5 '18 at 16:35
  • 3
    Thank you for your suggestions! I will revise my question and shorten it as much as possible. – PySoft Dec 5 '18 at 16:37
  • 1
    I would hire you as a software developer – Mawg says reinstate Monica Dec 6 '18 at 8:47

Do you think i can work as a software engineer in the near future?

Yes, it is possible to move your career focus like any other related field. Usually, small companies allow you to work on multiple fields while larger company allow you to jump from a department to another after some time, they are some that even encourage this.

I read the development side was outsourced. A suggestion may that you create a web site on your time, show it to your boss to increase his faith in your skills and ask him some task related to software development, like updating the outsourced development.

I lack standardization and good practice in programming

After multiple projects and discussing with others programmers. I do not feel that good practices are the standard of our IT industry. What I believe it is important is the desire and the curiosity to complete the tasks with high quality standard. After a few years, I think you can surpass easily the average programmer. You seem to have it because you notice it. So, do not feel under evaluated about it.

I did request multiple times to hire a more senior technical figure to help me figure out the problems I have been facing and help my career development also.

I required the same thing in the past and I never saw a company granting this wish. I asked some help from complete stranger on LinkedIn, forums or guy in a meet up to assist me and surprisingly, a few of them accepted and in some rare occasions I was able to get a time bank paid by my employer. Also, exchanging with others increase tremendously your knowledge.

Do you think i would be a valuable asset to a company well-structured etc?

Yes, the skills you acquired are valuable and you have dual proficiency. You can be a critical employee or a very good consultant. Often, product companies seek an employee that he is able to accomplish multiple tasks more or less unrelated while service companies seek experts to their field.

As a full stack developer, I work on multiple projects related to plant automation: PLC generating data for the ERP and BI tools. On each project, I was surprised how hard the communication between the electrical engineers, the network administrators and the developers was and so many miscommunication happens like people was using the same words with different meanings depending of their field.

Several consultant companies told me they are trying to find electrical engineers with the profile you have. You will shine at those moment while the developers and the engineers will try to guess what the other party need from them.

  • Thank you for the reply. really appreciate the detail of explanation on the major points of my question. – PySoft Dec 6 '18 at 9:35

I am a software developer and I would say yes, you can work as a software developer because you already are one. (Software engineer and developer are the same thing in modern parlance.)

People who understand how to write programs, run programs, edit programs, design programs around a user, and apply programs to hardware are always in demand.

One does not need a master's or even a bachelor's in computer science to be a software developer. I don't have one. They certainly can help but they're not necessary - computer science and programming are two different things.

Also, your experiences around a lack of guidance are very common within software. What matters to companies is that you can produce value as a programmer. Finding a company with good seniors to work under is a matter of networking and asking the right questions in interviews.

I would recommend you Google "software impostor syndrome" and see if that helps you.

  • 3
    Big thanks for introducing me to the term software imposter syndrome. After googling it I realised that I definitely have a case of this. – Joker28322 Dec 5 '18 at 23:51
  • Thank you! I did google it, and it did make me feel better about my position. – PySoft Dec 6 '18 at 9:38
  • @Joker28322 No problem. To be clear, impostor syndrome isn't limited to software - the term is usually just "impostor syndrome" on its own. – learner Dec 7 '18 at 0:12

Not the answer you're looking for? Browse other questions tagged or ask your own question.