The central issue of today’s article is the possibility of having a successful carrier in the field of software engineering without a suitable college degree. Let’s imagine that you’re a student of a law department, or you work as a manager in a big company. Suddenly, you understand that what you have been doing is no longer interesting for you. Then, you realize that computers have always been your passion and you start programming little by little. However, is it possible to become a successful Software Developer lacking CS degree?

Spencer Cornelia and Sylvester Morgan will say “yes”. Cornelia is a Software QA Engineer in an American Corporation, but in college he has chosen the sports management as a major. As for Morgan, he didn’t attend any college. Now he is a Software Developer at Quicken Loans.
You will be surprised, but they moved from initial stages of their work to a position of Junior Software Developer when they worked full-time with another specialty.

We don’t say that it is an easy matter, or that a CS degree isn’t important for software engineering. But there are many advantages saying that ambitious developers can complete an intensive course, work on some projects, and be ready for entering low-level positions for a one-year period.

Here are several tips for shifting towards a successful carrier.

Design Your Own ‘Degree’

The first step to think over is to figure out skills which are absolutely necessary for you to take a leap. It is not worth trying to learn a lot of various programming languages and structures that you will hardly use. Instead, you may establish your own degree comprising a personal set of essential skills alongside a curriculum of possible courses to take in future.

These important things will help you concentrate on your carrier goal.
According to Morgan, it is useful to determine your specialty, such as mobile development. If you don’t know for sure, you may take an introductory course including some basic structures, such as algorithms, testing, software development field, before you make up your mind on a particular programming language.

If you have some acquaintance with experience in this field, talk to him. This will help you understand the bigger picture and figure out necessary skills. What is more, search for some online resources, such as Coursera, a platform for large-scale training founded by Sandford computer science professors. Sometimes, it is free or cheap to take a course on such platforms so that you may benefit on it. Some curriculums are intended for the use of working professionals, for example, this from article on GitHub and this one from Google.

Despite the fact that Cornelia chose enrolling in a web development course, he suggests your not pursuing this path.
“The learning curve for software engineers is like a hockey stick,” he says. “Start by trying to think like a developer and learning the framework of programming languages. As soon as you become expert in your first language, you can learn one more within a week.”

Another way to make learning go faster is to review basics in relevant textbooks. Morgan recommends learning C# or Python at first, and then proceed with Java, HTML, Ruby, CSS and SQL.

Practice What You Learn

Learning takes time. To save it up, put into effect what you have already acquired. Work on small projects, for example, build a website or a new mobile application at your free time, so that you will feel much more secure in your knowledge. Besides, except obtaining practical experience, you will compile your portfolio with fulfilled projects. After all, your future employer will be very satisfied with it.

Note that the more you practice, the more experience and self-confidence you get.

Immerse Yourself in a Technical Environment

It is like learning a foreign language and not speaking on it. Instead of working in various incoherent fields to get by, you should learn and practice while earning in testing, technical support, system administration or whatever. No doubt, feeling the atmosphere of a tech job and being surrounded by developers working on code, you will unwittingly learn programming and frameworks.

What is more, you will have a great chance to spot and develop essential skills not related to technical field, as team work, communication inside the team, problem-solving, creative imagination, and so forth.
It may happen that you’ll be involved in some challenging tasks, as writing a code or designing a software app, to better understand how they are functioning. Don’t avoid such chances because they make you grow.

Hit the Market

The main thing is that you are not required to have a grasp of programming in order to start applying for low-level positions. More specifically, hardly had Morgan completed several training courses and programming projects when he created an online portfolio. Shortly afterward, he was offered to take his first position regardless of the company requirements on a candidate’s experience and degree.

We recommend that you list the courses you have taken in a special column of your CV. Work thoroughly on coding tests and be ready to speak on them during your interviews.

Once you’re employed, you may advance your knowledge by choosing additional training courses and developing new skills. No doubt, little time will pass before you are welcomed to a mid-level position. And all this might be attained without a CS degree!

Leave a Reply