Clint McMahon Clint McMahon

How I Got My Start As A Professional Software Developer

This month marks my 20th year as a professional software developer. Over the years I’ve had a lot of opportunities to work on some pretty big software projects and meet some great people along the way. But I didn’t start out like most of the other developers I’ve worked in my career. I got my first real programming job when I was 19 and didn’t graduate college until I was 29. In those ten years I took night classes at Minneapolis Community & Technical College and later, after I moved to Chicago from Minneapolis, online classes at Metro State University.  If you might be questioning the need for a four year degree to become a processional developer or maybe you have other blockers keeping you from getting your degree now, this is how I did it.

How to Become a Software Developer Without a Four-Year Degree

This month marks my 20th year as a professional software developer. Over the years, I've worked on major software projects and met some great people. But I didn't start out like most developers I've worked with in my career.

I got my first real programming job when I was 19 and didn't graduate college until I was 29. In those ten years, I took night classes at Minneapolis Community & Technical College and, after moving to Chicago from Minneapolis, online classes at Metro State University. If you're questioning the need for a four-year degree to become a professional developer, or have other blockers keeping you from getting your degree now, here's how I did it.

My first job was as an entry level/jr. developer at Wells Fargo in the Stock Options Services group developing Visual Basic 6 desktop and Classic ASP apps. Except for two computer classes in high school and a one-year computer programming certificate from the now defunct Brown Institute, I had zero classroom computer science education at the time. That Brown Institute certificate is the same as a coding boot camp; a 12-month course where you focus on a variety of programming languages but never really get into them enough to fully understand how they work. Looking back at that experience, as much as the organization promised we’d all have super awesome programming jobs at the end, I don’t feel like that adequately prepares someone just entering the workforce to be successful in the software engineering space. So, a lot of my education came from reading books, getting the MCSD, creating a few AOL Proggies, and just building things on my own. I feel like I was pretty fortunate as I was hired with a non-existent computer science education and couldn’t even order a beer at team happy hours – I had a lot of cherry cokes in those days.

My First Software Developer Job

My first job was as an entry-level/junior developer at Wells Fargo in the Stock Options Services group, developing Visual Basic 6 desktop and Classic ASP apps. Except for two computer classes in high school and a one-year computer programming certificate from the now-defunct Brown Institute, I had zero classroom computer science education at the time.

That Brown Institute certificate was similar to a coding boot camp—a 12-month course where you focus on a variety of programming languages but never really get into them enough to fully understand how they work. Looking back, as much as the organization promised we'd all have great programming jobs at the end, I don't feel like that adequately prepares someone just entering the workforce to be successful in software engineering.

So, a lot of my education came from reading books, getting the MCSD, creating a few AOL Proggies, and just building things on my own. I was fortunate to be hired with a non-existent computer science education and couldn't even order a beer at team happy hours—I had a lot of cherry cokes in those days.

My dad is an old programmer who had been building my small hometown a water usage billing system in Visual Basic. He generously allowed me to hack away on a few components along side him to give me some real world working experience. I quickly added this to my resume – right above the one year programming certificate and my previous experience as a warehouse “manager” at Wick’s Furniture in Edina, Minnesota. I’m convinced that having this development experience on my resume is what enabled me to get an interview and later hired as a professional software developer without any experience or a four year education – or even a two year education. Before this job I applied to hundreds of entry level programming jobs and never heard anything back – which is hella discouraging. After months of applying to jobs and never hearing a peep I started get really down and thinking about backup plans. The thought of joining the Army even popped into my mind. That or maybe start looking at two or four year colleges. Then I got an interview for an entry level developer role at Wells Fargo. That interview came from a job fair my roommate convinced me to go to with him. I interviewed with a HR person, technology manager and the director of the business; they all decided to hire me. Coming from a non CS background with very little experience, getting that first job was crucial. The saying goes “you can’t get experience without a job and can’t get a job without experience” so after a couple years of development experience it was pretty easy to get job offers. Potential new employers start to look past not having a degree to see that any experience was enough to look past not having a degree.

How I Got Hired Without a Degree

My dad is an old programmer who built a water usage billing system for my small hometown in Visual Basic. He generously allowed me to hack away on a few components alongside him, giving me real-world experience. I quickly added this to my resume—right above the one-year programming certificate and my previous experience as a warehouse “manager” at Wick’s Furniture in Edina, Minnesota.

I'm convinced that having this development experience on my resume enabled me to get an interview and later get hired as a professional software developer without any experience or a four-year education—or even a two-year education. Before this job, I applied to hundreds of entry-level programming jobs and never heard anything back—which is discouraging.

After months of applying to jobs and never hearing a peep, I started to get really down and think about backup plans. The thought of joining the Army even popped into my mind. That, or maybe start looking into two- or four-year colleges. Then I got an interview for an entry-level developer role at Wells Fargo. That interview came from a job fair my roommate convinced me to attend. I interviewed with an HR person, technology manager, and the director of the business; they all decided to hire me.

Coming from a non-CS background with very little experience, getting that first job was crucial. The saying goes “you can’t get experience without a job and can’t get a job without experience.” After a couple years of development experience, it was much easier to get job offers. Potential new employers started to look past not having a degree and saw that any experience was enough to consider me for the job.

There are so many senior developers and people in the business who took me under their wing to help me grow as a developer and person in those early years. It would be easy for me to say I got hired as a professional developer without having a four year degree all on my own, but that would be a lie as there were many people who made that happen for me; my dad, my roommate, the HR rep, technology manager, business manager, etc. I’ve since tried to reach out to the people who made it happen to say thanks for the opportunity but haven’t been able to find them online yet. They probably have no idea how much their decisions meant to me then and how much they do today.

The Importance of Mentors and Networking

There are so many senior developers and people in the business who took me under their wing to help me grow as a developer and person in those early years. It would be easy for me to say I got hired as a professional developer without having a four-year degree all on my own, but that would be a lie. There were many people who made that happen for me: my dad, my roommate, the HR rep, technology manager, business manager, and more.

I’ve since tried to reach out to the people who made it happen to say thanks for the opportunity, but haven’t been able to find them online yet. They probably have no idea how much their decisions meant to me then and how much they do today.

Every now and then I’ll be talking to someone at a party who isn’t happy with their job and eventually they’ll ask if they can pick my brain on how to get into programming. Many of these people are looking to get started in development as a career without a formal CS degree or previous development experience. My answer is always to just build something by solving a problem you have or a problem you can see. You’ll learn a lot building that first app or website and you’ll have something to put on your resume. There are so many resources online to learn the concepts of programming, but you’ll never really get it until you try to build something on your own. If there is an idea you have or an open source project you’re passionate about, then I’d recommend trying to build that app or website or get involved in that open source project.

How to Get Started in Software Development

Every now and then, I’ll be talking to someone at a party who isn’t happy with their job and eventually they’ll ask if they can pick my brain on how to get into programming. Many of these people are looking to get started in development as a career without a formal CS degree or previous development experience.

My answer is always to just build something by solving a problem you have or a problem you can see. You’ll learn a lot building that first app or website, and you’ll have something to put on your resume. There are so many resources online to learn the concepts of programming, but you’ll never really get it until you try to build something on your own.

If you have an idea or find an open source project on GitHub you’re passionate about, I recommend trying to build that app or website or get involved in that open source project.

I learned a valuable lesson then in taking chances on people and how getting a small job opportunity can be the break someone needs. I try to pay it forward when I’m working with younger developers or if I have a gig I can bring on a more junior developer to help them gain experience.

Paying It Forward

I learned a valuable lesson in taking chances on people and how getting a small job opportunity can be the break someone needs. I try to pay it forward when I’m working with younger developers or if I have a gig where I can bring on a more junior developer to help them gain experience.

Tips for getting your first programming job without a four-year degree:

    Tips for Getting Your First Programming Job Without a Four-Year Degree
    • Learn a language: Use online courses for JavaScript, C#, Python, Ruby, or any language that fits you. Try building a couple “Hello, World” apps and choose the language that feels right.
    • Build something: Create a snow emergency website, tamale tracker, or playlist generator.
    • Show your work: Create a GitHub profile and start pushing code from those projects to your repositories.
    • Build a portfolio: Make a portfolio website to present yourself as a professional developer and display the different projects you’ve worked on—open source or your own. The more you can show off your skills, the more likely you can set yourself apart.
    • Update your resume: Add your portfolio, links to your sites/apps/open source projects, and your GitHub profile.
    • Network: Connect with others and share your portfolio whenever you can.
    • Join local tech meetups: Meet other developers and learn about opportunities.
    • Join local tech Slack groups: They usually have a #jobs channel where people post jobs, including entry-level developer positions.
    • Reach out: Ask other developers questions or advice.