I went to university but I didn't finish my degree.

Eventually, I discovered programming. I started with the classic textbook "Structure and Interpretation of Computer Programs". So, I am comfortable using Scheme - I can express my ideas clearly in this language.

Currently, I am studying Python and Deep Learning by Goodfellow.

Concurrently, I will be studying CLRS and solving algorithm and data structures problems.

Given all the above, how should I move forward to start my career in the software industry as a software engineer?

  • 3
    Ideally, shift as far towards computer science as possible, but a completed degree opens some doors. Commented Dec 12, 2019 at 0:21
  • @JoeStrazzere yes, it is.
    – user112701
    Commented Dec 12, 2019 at 19:33

3 Answers 3


Python is the 4th most widely used language at the moment, so just apply for jobs.

Not all companies will require a degree, and even those that say they do may still talk to you if they don't get many other applicants.

Most junior programmer jobs don't actually need degree-level knowledge, companies just ask for it so they don't get swamped by people with no knowledge at all.

Job hunting is a numbers game, some companies may ignore you, but you only need one to get started.

  • Indeed, and python inherits much of what would once have been done in Lisp or Scheme (though Java seems to get the CS101 curriculum slots). If the asker were still college age resuming the degree first would probably make sense for its benefits of general perspective. But if (as the questions seems to hint) they are at least a few years older and perhaps needing to support themselves, then yes, working in the field is probably a key initial step, and they may already have a fairly comparable background for doing so. Resuming studies on the side could then be considered. Commented Dec 12, 2019 at 21:20

So the best answer would be to get a degree in computer science, as this opens up a lot of doors early on in your career (and some places won't even hire a senior developer without the degree), but if that is not feasible, it is possible to get a position if you can demonstrate that you posses the knowledge to do the job. I would advise writing some applications and putting them into a publicly accessible git repository (such as Git Hub or Bit Bucket) or somewhere that employers can see your work, your coding style, and your methods to solve problems. If you are able to apply for a junior level position and show the employer some of your work it will be much easier to get in the door than showing up with nothing but a resume and answering questions. Good Luck.


Start by learning one of the languages that is in demand today. Next, learn how to use the framework that is associated with that language.

Usually learning a language alone is not enough. You need to actually learn the frameworks that use them as well. For example if you were studying java then you would also be learning about android. If you were studying C# then you would be learning about .Net, and so on.

According to this article, the most in demand languages in Jan 2019 were:

  1. Java
  2. Python
  3. Javascript (don't learn this by itself, this is usually combined with something else).
  4. C++
  5. C#
  6. PHP
  7. PERL

Finally, you will need to start programming something in your chosen language. This is so that you can actually talk about something in your interview, and display some skills.

If you are serious I would take it one step further and try to create a basic work history for yourself. For example by working for friends, family, online marketplaces and so on. This will only increase your chances of getting hired, because a lot of employers are hesitant to hire someone with no work experience at all.

Once you have some skills, you could also apply to launch-code. They often help new developers break into the career. You don't have to take their classes in order to get their help.