Up until eight months ago, I was an happy PhD student on theoretical cryptography. Since then my supervisor had family issues and I was "kindly" obliged to change my research topic; it didn't go well and one month ago I resigned.

During the last six months I was working on the emulation of computer networks to obtain their quantitative cyber risk assessment by means of capture the flag contests. I used Perl and Bash to automate the configuration of the vulnerable nodes for the contests. However, such tasks were more time-consuming than complex.

As a computer engineering student I had spent all my "free time" on theoretical cryptography, and that's why my knowledge on software development is very narrow.

For this reason I'd like to know whether it is advisable to prepare myself for a job interview in the short run or not. I'm currently focusing full-time on Android and backend development for my career change.

  • 3
    Far too broad I'm afraid - "the average" is pretty much meaningless, because all that matters is how fast you get good at it. – Philip Kendall Nov 11 '17 at 19:59
  • @PhilipKendall I tried to shrink the range of possible answers, but this question still remains about a "Personal advice on what to do". I don't have the power to delete it, though. – silvio-b Nov 12 '17 at 8:42

A master's degree in computer engineering, even with theoretical focus, is sufficient for most entry level software development jobs. Sure, your practical skills will be below average, but you will have picked up many theoretical skills entry level candidates usually lack.

Personally, I had a master in computer science with specialization in theoretical computer science, entered the workforce as a junior developer, got promoted to senior within 3 years, and now work as a software architect. I have found the conceptual understanding my studies provided to be invaluable in many cases and a distinct advantage over my peers, but I did need the first couple years on the job to improve my understanding of the technologies in use and learn efficient development practices.

Your mileage may vary, of course.

  • Thanks for your answer. I'm not sure whether to prepare for a job interview in the short term or not. I'm not feeling able to see things in perspective at moment. – silvio-b Nov 11 '17 at 20:25
  • I'd probably spend a few weeks to dust off my coding skills, but what you lack is practical experience, which you can more efficiently get on the job than at home (your supervisor or colleagues can identify topics of interest and good resources for acquiring that knowledge). – meriton Nov 11 '17 at 21:17
  • I've just realized that my question is illegal because I'm asking for a "Personal advice on what to do"... I'm going to delete this question to be respectful of this place. In any case, I'm very grateful to you for this suggestion. Please, one last question: are the problems proposed on www.spoj.com/ and/or www.codeabbey.com/ good for the "dust off process" or should I keep on studying android/backend development ? – silvio-b Nov 11 '17 at 22:04
  • I'm not allowed to delete this question. – silvio-b Nov 12 '17 at 8:46

Not the answer you're looking for? Browse other questions tagged .