Over the past ten years, there has been an explosion of interest in web development.
The 2008–09 financial crisis caused millions of young adult workers to lose their jobs and rethink their entire careers from scratch. From the ashes of this crisis, web development has become the darling of the job market.
An increased number of companies, small and large, have turned to the wonders of web development to disrupt or adapt to the new “web 2.0” environment. These companies know that without a web presence, their businesses are doomed to be ignored.
The spike in interest in web development has led to millions of young adults thinking of it not just as a skill to learn, but as a career to adopt. But for those who have already gone through college and spent a life worth of savings to get their degree, switching their careers to web development seems like a tough proposition.
If you’re in this position, the questions are hard. Do you have to start all over again, taking expensive and lengthy classes to learn the skills? Or can you jump ship from a traditional career to web development and still make it until you get a well-paying job?
The answer is, no, you don’t have to go back to college to become a web developer. And yes, you can transition to web development if you prepare yourself for it.
People from all backgrounds have been able to switch to a career in web development. Their advice will shine a light for those who want to do the same without having to sacrifice everything in the way.
Choose the Right Self-education Path
To say that it is possible to become a web developer through self-education may have seemed like alchemy 20 years ago. In 2020, self-education appears to be the rule rather than the exception.
The 2016 StackOverflow annual survey found that almost 70% of its respondents considered themselves as “self-taught.” Whether they learned to code entirely on their own or partially is something the survey left out. However, it still shows the relevance self-education has for professional web developers.
For someone who wants to become a developer, learning on their own is more of a pragmatic obligation than a moral one. Without a formal degree, self-education is the only path to acquire the skills necessary to launch a web development career.
The question, however, shouldn’t be focused on whether self-education is a good idea or not. What truly matters, according to several developers, is to pick the right language and put all energies available into mastering it before focusing on a specific framework. It seems, unlike what the business saying goes, that it’s better to put all the eggs in one basket than to spread them out.
For Lexis Hanson, a former finance professional turned developer, mastering a programming language first — one based on her needs — and focusing on frameworks and libraries second was critical to her self education.
[Mastering a programming language first] forced me to stay focused on getting extremely comfortable with vanilla JavaScript before diving into frameworks, which made that next step significantly easier.
Putting language over frameworks may be the smart decision, but it still doesn’t help to pick the right one. One solution that can shine a light on the issue is to pick a personal project. The specific technical needs required to fulfill your project will guide your choices better.
One self-taught developer who’s in favor of this approach is Avi Flombaum. Instead of picking the first language that pops into a Google search, he explains:
Beginners shouldn’t care about the languages they’re using. They should care that their chosen language matches their goals, if they’re getting expertise and depth and in it — and, of course, if they love using it.
A personal project will foster your passion for programming, and it will help you decide on the language you should consider to build it. Some common ideas include:
- a static website
- a basic app, like a to-do list
- an automation script
If you’re short of ideas, you can check the r/DailyProgrammer subreddit, which posts daily projects with a detailed background, challenges, and inputs to use.
Another vital aspect to consider before settling on a specific language is to think about your natural problem-solving methodologies. How do you break down problems? How do you think about their solutions?
In the case of Hanson, she wasn’t sure whether to choose a language based on object-oriented programming or functional programming. But instead of going with the wisdom of the crowds and picking a popular language, she thought about the way she solved problems in general. Based on that introspection, she chose the programming paradigm that best suited her (which happened to be JavaScript).
Functional programming resonated with me (you might have other preferences), and I challenged myself to approach problems from a “functional-first” perspective. In my opinion, this forced me to think more flexibly about programming and how functions and components should “compose” with one another.
As you learn the basics of a language, consider reading its documentation, especially if you’re already toying with a specific framework. At first, this may seem hard, but the more you practice your skills, and the more you read the documentation, the more sense it will all make.
Vinicius Brasil recommends using GitHub to find and read production code in the language you’re learning. He adds, “If you are confident to contribute, that’s even better.”
Whenever you get stuck, don’t panic. Web development is a friendly skill whose practitioners share solutions to common problems. Stack Overflow is the most popular place developers go to ask questions and share advice. And when you can’t seem to find a solution, remember: “Google is your friend.”
Among the many challenges self-educated developers often face is getting accustomed to the rather strange way of writing code. Many experienced developers will tell you that the way you write a string of code is as important as what that code is meant to do. The truthfulness of such a statement is a discussion of its own, and it has its merits, but for a beginner developer who’s learning on the side and with their own resources, writing perfect code is more of a luxury than a necessity, at least in the beginning.
Such is the case of Jeremy Gunter, whose “learn first, clean later” mentality became the greatest boon to his confidence during the early days of his self-education. His methodology consisted of using pseudo-code to make his code work and then Googling how they are supposed to be written.
Instead of going mental trying to remember method names, I focused on what action I needed to perform. When I wanted to add an item to the beginning of an array, I found it easier to google the phrase “add item to beginning of array JavaScript” than to try and use my own memory to differentiate between shift(), unshift(), and pop().
Any experienced developer will probably grind their teeth at the idea of using pseudo-code over syntax. Still, for the self-educated folk, Gunter’s approach resembles more to Mark Zuckerberg’s “learn fast and break things” mantra than to Tim Peters’ “beautiful is better than ugly.”
All in its time, Mr. Peters, all in its time.
Build a Network
College education is often seen as a mechanical process where a student acquires all the required knowledge to become a professional in their chosen field. Under this mentality, anything that doesn’t imply studying and memorizing technical concepts is secondary.
This simplistic idea leaves a significant advantage that college-educated developers have over self-taught ones, and on which the latter must work if they want to be in an equal position to the former. That is, the professional network college provides to its students.
A professional network is built upon a web of mentors, professors, job seekers, and classmates. Some of these people will eventually become colleagues, and some will act as referrals and references for job prospects, both critical elements to succeed in any professional career.
To dismiss the importance that a network like this has over web developers is to undervalue one of the most prominent advantages colleges bring to their students. Thus, anyone who is considering switching to a career in web development must prioritize building this network while they develop their skillset.
As a self-educated developer, you may not have professors or job seekers around you. The work, then, should be focused on building strong relationships with those developers who may help you in your journey.
To start, you need to consider participating in local development events and meetups. Whether these meetings are general or language-specific isn’t important. What matters is that you proactively meet other people and become a part of the community.
Nnena Ndukwe, a college dropout and former tanning consultant, explains the usefulness of attending meetups throughout her self-education journey:
Having these conversations about tech with people in the field helped me gain more knowledge about opportunities for work, organizations to volunteer for, and tech or social events to attend that would be fulfilling. One opportunity always leads to the next via networking.
To prove her point, Nnenna says she got her first development job through a bootcamp she heard about in one of the meetups she participated in. Whether meetups generate jobs directly or indirectly isn’t relevant. The point is that they compound the opportunities available for switching to a web development career.
The most popular site to find local meetups is Meetup.com, but you can also use Facebook events and Eventbrite. A quick search in any of these sites will bring you dozens of meetups in your area.
Just like Google is your friend when it comes to learning to code, you can also use it to find events in your area. You can use a general search query like “web development” plus your city, or a more specific one like “Python” (or any other language or framework you want) plus your city, and you’ll get many events close to you.
You can both participate as an attendee and use the networking available to meet others who can help you, or you can give a talk on your self-taught process.
Most attendees will be surprised and glad to meet someone who’s trying to make the switch without a degree. You may even meet others who happened to achieve your career switching goal and who can give you feedback and support on your journey.
Another option to build a network is to participate in online communities. There are dozens of Slack chats for developers, and these will provide you with a great deal of information about the latest news, ideas, and people to connect with. You can even search for developers in your area you can meet for a coffee.
These events and meetups aren’t just useful for meeting colleagues. As Nnenna Ndukwe attests, they are also effective for meeting potential clients or employers as well.
Continue reading How to Make a Career Transition Into Web Development on SitePoint.
No comments:
Post a Comment