If you're thinking about trying to start a career as a software developer and done any kind of research into the tech industry, you've no doubt come across the countless horror stories and discouraging "facts" about how difficult it is to break into the world of software engineering.
As someone that started out my tech journey with a background in warehouses and manufacturing, with no extraordinary technical acumen, no connections to the tech community, and no college under my belt (except for a couple failed classes in the "running-start" program) - I'm here to tell you that much of what you hear is simply not true. Although it does take work, and you won't just get a coding job on a whim, there really aren't as many barriers separating you and your dream career as you might think. The world of technology is constantly evolving, and so are the requirements to working in it. While some of these myths may have been true at some point in the past, they aren't now. It's time to stop letting them get out into the world and start getting rid of this artificial barrier that's stopping so many people from even attempting to get the career they want.
Myth #1: You have to be a tech junkie to be a good developer
There is this idea that all developers are some kind of "tech nerds" that grew up taking apart computers and hacking video games. But as seems to always be the case, reality isn't quite like the stereotypes lead you to believe. You don't have to be a major technology enthusiast to be a software engineer. I was never all that into tech outside of being a general consumer. Sure I played video games and was excited when the new iPod or new phone came out, but the thought of actually finding out how these things worked was far from my mind.
All you really need is a general understanding and a willingness to learn about the technology relevant to the field you want to work in. If you are a tech junkie... great! You already know you'll enjoy the work! But don't be discouraged if you're not. There's a good chance you'll find yourself getting more into it as your career grows and as you start working on new and exciting things. If you're reading this article and you've gotten this far - you have more than enough interest to get started.
Myth #2: You have to be a genius to code
This one is similar to the first myth (and several more later on) in that it's just another stereotype. I can't tell you how many interactions I've had that went pretty much exactly like this:
Me after someone asks what I do: "I'm a software developer, so I make apps and websites and things like that."
Them: "Wow you must be really smart. I could never do something like that."
As much as that conversation is fine if you want to stroke your ego a bit, I always feel a little awkward afterwards. Because of course I'm not any smarter than the person I'm talking to. I just happened to learn a different set of skills.
Learning to code is sort of like learning another language. It takes dedication, incremental learning (start small and easy then slowly move to more difficult and complex), repetition, and of course practice. But the important thing to know is it doesn't require any inherit "smarts."
Myth #3: Programming involves too much complex math
This was something that I believed before getting started, and something that almost made me change my course entirely. But thankfully I kept going, and to my immense relief, learned that programming doesn't have to involve some crazy math skills.
Now to caveat this - I recognize that a lot of degree programs and universities do require higher level math, however not all of them do. And as I'll talk about a bit later, traditional college isn't your only option. I also have to acknowledge that some programming actually does involve a good amount of more complex math. If you are looking to get into something like game development or cryptography or some other more niche fields, then this one won't be as much of a myth.
But if you're someone like me who dreaded walking into math class, not all hope is lost! There are plenty of fields that you can get into that don't require some kind of advanced trigo-calcu-algebraic madness. Things like building websites, creating user interfaces, or even a lot of API and cloud work, are all perfectly valid and lucrative areas of focus for a programmer and require little to no high level math skills. Besides, unless you're in an interview (and sometimes not even then), no one is going to frown on you pulling up Google when the occasional need for math does arise.
Take it from me. I have been coding professionally for a little over 4 years, I make a comfortable 6-figure salary, and have no issues completing any tasks or growing in any of the companies I've worked for, and I can't remember a time I had to solve a complex math problem all on my own to get the job done.
Myth #4: You need to have an expensive college degree
This is one of those myths that started as a fact. Back in the day if you wanted to become a programmer the best option was to go get a degree at some university and inevitably go into a bunch of debt. Fortunately though this thought process is starting to disappear. With technology becoming such an integral part of every day life, and with so much easy access to self-learning materials, more and more paths are opening up to get into the tech world. It's starting to become more common to meet developers that are entirely self taught. Utilizing online resources such as LinkedIn Learning, Udemy, Codecademy, or even just through YouTube tutorials - you can learn everything you need to know to nail an interview and be a very proficient engineer.
But what if you want a little more guidance than that, but still don't want to go majorly in debt for a large university degree? Well, there's options for you too! Bootcamps are shorter programs that solely focus on getting someone the skills to become a software developer without all the fluff of a full scale degree. You won't be leaving these bootcamps with a Bachelor's degree, but you will be leaving with the skills you need to start doing the job.
There's also more programs that are coming up at smaller schools and community colleges that do end with a Bachelor's degree, but at a fraction of the cost of a large university. This is the route I took. My local community college offered a program in "Applied Computer Science" where we spent two years in small cohorts of students, creating real applications for real clients. All in the process of learning to code. The small and consistent class sizes along with having a core group of a few teachers allowed us to build strong relationships that in turn lead to greater learning. Building real apps for real clients, allowed us to really dive deep into the practical application of programming, rather than just getting taught a bunch of computer science theory. It was at this school that I also achieved my Certified Scrum Master certificate, and even worked in my first web development internship. And the best part is - my entire Bachelor's degree ended up costing less than a quarter of what it would have at my local large university.
Take a look into less traditional methods of learning. You may be surprised at what's out there today!
Myth #5: Coding is a young person's game
I want to preface this by saying that unfortunately agism does exist in the tech world today. It shouldn't exist and it's nothing but a detriment to the entire tech society. But that is another topic for another post. My point here is that even if you don't think of yourself as "young," you shouldn't count yourself out of becoming an engineer.
If I were to guess at what started this whole idea that the older generation can't become developers, I would attribute it to the early days of the big tech boom. When computers started to be commonplace, everyone started carrying tiny computers in their pockets, and the internet was just hitting its stride. At this time the people that were growing up alongside the technology were able to see it as a natural part of life, while at the same time the older generation saw the tech as something new and wildly different than what they were used to. But times have changed. Technology is so prevalent today that it's almost unavoidable to people of any age. This means more exposure, which consequently "levels the playing field" and makes it a lot easier for the older generation to quickly ramp up their skills in technology.
Nowadays, anyone of any age can get into software development and be just as successful as the 20-something year olds just out of college. I myself didn't even start learning until I had been out of High School for around 8 years and I didn't get my first internship until close to 30 years old - which admittedly isn't old, but it's definitely not the traditional path. I've also worked with plenty of engineers that are twice my age or more, and many of them make me look like someone who just wrote my first "Hello World" program.
Age is nothing but a number. Whether you're a fresh graduate not even out of teenage years, or you're looking to switch careers after 30+ years in another industry, you can become a software engineer if that's where you want to be.
Myth #6: Programmers are introverts that spend all day in the darkness staring at a screen
Okay. So this one definitely could be true for some. If you like to be in a dark room while you work and coding is your passion so you spend all day and night doing it, then you do you! But my point here is that this isn't the way it has to be. It's not like you get your first programming job and are suddenly teleported to a dungeon where you can never leave or talk to anyone else. I've actually found that this job can be quite social!
A lot (almost all) of software development in the professional world involves teamwork in some capacity. Whether it's virtual meetings or working together in person, you will be collaborating with others to get your work done. There's also a good chance you will be interacting with people who aren't developers. A lot of teams will also consist of designers, project managers, sales, and even sometimes clients or stakeholders, so you may be interacting with a lot of different groups of people. Additionally, if you're particularly extroverted, you may find yourself joining the many developers today that go to conferences, teach classes, host podcasts, or in general spend a lot of their time being around others.
There's also a lot of networking. Networking with others can become vital to a software engineer's career, especially in the early days. Whether that means just having a presence on LinkedIn, or going to meetups and workshops and exchanging information with the people you meet, networking can open up tons of new job opportunities. Think about it. If you're a hiring manager or a recruiter looking for a new Front End dev to join your team, and you recently had a great conversation with someone about how JavaScript really isn't all that bad, you're probably going to reach out to that person first to see if they are interested!
So you don't have to be secluded in a corner to be a developer. In fact, it helps if you can manage to have a little bit of a social side to you! That's not to say you can't be a developer as an introvert either. As a fellow shy-guy I can confirm that it's possible. But if you can manage to put yourself out there to meet and talk to people every once in a while, and if you can collaborate well with your team, you'll find a lot of success in this career.
Wrapping it up
This post ended up a lot longer than I originally intended, and if you've stuck around until now thank you! My goal with this long-winded list is to prove that anyone can start a career in software development if they really want to. We as a community in the tech world need to put a stop to the gatekeeping and bring down the intimidation factor so that more people can discover what a great career this can be. If you're considering jumping in, give it a shot. And if you have any other things stopping you from getting started that I haven't covered here, give me a shout. I'd be happy to give you some insight from the inside... and most likely end up telling you to try it anyway!
Top comments (17)
Yes, Myth #6 is clearly a myth! I spend all day in the light staring at a screen!
Same! Tho i don't know if it counts cause im still young and might change lol.
When I was a teen, I was motivated by this document: catb.org/esr/faqs/hacker-howto.html
Actually I wanted to be a hacker. But Eric Raymond (the person who wrote above document) wanted me to become a software developer.
😅 This is the story of my life!
I spent so much time on that website.
Now I am a Software Engineer.
These myths and the other types of gatekeeping in our industry definetly need to be broken.
There really is nothing special to becoming a good developer compared to any other career. The being a genius myth is such a crazy one too. So many people say the same to me and I would have no clue how to do the simplest task for their job for the same reasons they don't know how to code.
Great write up! I think there are many preconceived notions of what it takes to be a programmer. I think if you are going to be self taught, trying to stay focused on one language first, and become proficient. This will make it much easier to move horizontally and learn other languages. Also persevere, and just keep pushing ahead.
Thanks for sharing this with all of us! This is some really helpful helpful myth-busting.
I could resonate so well with THIS! I cannot and possibly never Leetcode like some of my peers—but I take consistent steps to get better at coding—one day at a time.
As a mom who juggles a lot of plates, realizing #1 was super important to me as I started bootcamp. Nice post!
Thanks, glad you liked it!
I've worked in this industry for 3 years, most of the above are quite true with me when I started learning to program, luckily I have a friend who is a developer and he has guided me throughout my learning journey. For those who don't have a friend like that when starting your first step into this, don't worry, everything you need is on the internet and I suggest you should participate in an online/offline course to fasten your development from my perspective
thanks jordan
This write-up was indeed helpful and just in time. I needed that. Thanks for sharing!
awesome post buddy !
Thanks!