Breaking into Programming Without a CS Degree: Real-World Experiences and Advice
A reader recently asked, "Have you ever gotten a job as a programmer without a CS degree?" This is a question that has both intrigued and challenged many in the tech industry. I, for one, have personally navigated this path, and I’ve also hired numerous programmers without formal degrees. Let’s explore the journey and practical advice for those seeking to enter the programming field without a traditional Computer Science degree.
My Background and Experience
My degree is in public accounting, yet over four decades ago, I taught myself programming. In parallel, I also began teaching this subject. My first professional position came about in 1981 when there were almost no degree programs in computer science in Argentina. The lack of formal education in the field might have been a reason, but it didn't hinder my ability to secure my first job.
I started my career with a focus on systems engineering, programming, business analysis, project management, and testing and test management. I initially studied physics, which led me to a job in radar systems. However, I’ve since completed other courses that have equipped me for a variety of roles. A senior colleague at Google, for instance, holds a PhD in Geography, but his work involved significant programming components. He later moved to an IT consultancy after gaining experience in this area.
Corporate Perspectives on Hiring
Many companies prefer to hire advanced students who have already proven their worth, rather than freshly graduated professionals. For instance, a recruiter once sent me to an interview, and even though the requirement was a degree, the hiring manager was impressed with my self-taught programming knowledge. I’ve also hired individuals with no formal degrees, and both inside and outside of academia, a degree is not an absolute guarantee of a professional’s capability. Additional testing is often necessary to evaluate the individual's true level of expertise.
Personal Success Stories and Tips
One of my clients, who has a BS in Computer Engineering and an MS in IT Management, found it challenging to apply these skills in a professional setting. While the degrees are excellent qualifications, the knowledge gained from these courses was often not utilized in his Navy career due to the nature of software development being handled by contractors. However, his self-published Python books helped him establish credibility as a self-taught programmer. This successful outcome underscores the importance of showcasing your knowledge through practical means such as a coding portfolio, blog posts, videos, or even teaching.
So, if you have the knowledge but lack a degree, it’s vital to demonstrate your skills through a variety of methods. A strong programming portfolio is often the most straightforward way to showcase your abilities. However, if you don’t have a professional portfolio, consider alternative methods such as blogging, creating video tutorials, or even tutoring others to prove your mastery of programming.
Conclusion
The traditional path of acquiring a Computer Science degree may not be the only way to break into programming. Many successful programmers, including myself and hiring managers, have recognized the value of self-taught talents and practical experience. By leveraging your existing skills and creatively demonstrating your knowledge, you can open doors to rewarding opportunities in the tech industry.
Remember, a degree is not a prerequisite for a successful career in programming. What matters most is your ability to write code, solve problems, and demonstrate your expertise to potential employers. Empowering yourself with these skills and finding creative ways to showcase them can be sufficient to break the barriers and achieve your goals in the programming world.