How to Become a Web Developer: A Guide for Beginners

careers web development Oct 06, 2020

How to Become a Web Developer-- The Basics

The opportunities for programmers in the coming decade have been discussed over and over in popular media. According to the US Bureau of Labor Statistics, web development jobs will grow twice as fast as average.  That means lots and lots of new jobs in the field. 

Web developer jobs are actually the largest segment of jobs in coding. There is a significant crossover between web development jobs and many mobile development jobs. Many mobile apps are created with similar technologies to web sites. For example, React, a popular JavaScript library has a popular cousin named React Native, which is used for mobile development.

Since web development is the most prevalent field in software development it is the most approachable field for those new to development. There are many entry-level web development jobs posted on Indeed and other technical job sites.  Web developers are well paid, jobs are plentiful, and the rate of growth is considerable.  Web development is a great entry point in the software development field. The remainder of this article will lay out how to become a web developer step-by-step.

What is Web Development

Before considering how to become a web developer, let's talk a bit about what web development actually is. 

Perhaps the simplest way to describe web development is, "the building and development of web sites."  Some web developers work with web designers who create the visual design of a website.  Designers are often called User Interface Designers or User Experience Designers. Some web developers work alone completing every aspect of a web project, while other web developers work in a team.

In enterprise environments, web developers may "own" a very small portion of the site that they maintain and improve. Years ago I taught a training course at Cisco in San Francisco. I remember a developer showing me a menu that was his responsibility.  It was actually his only responsibility on his large web team.

Typically, web developers will spend the majority of their time working on website code written in HTML, CSS, JavaScript, and server-side coding languages. The balance of their time may be spent documenting, in meetings, or working on project management tasks.  I have found that the larger the organization and development team, the more time that is spent in meetings and with project management.  Something to think about as you consider how to become a web developer is the type of environment you prefer to work in. 

Over the past few years, the web development field has become more specialized with developers being categorized into three groups:  client-side developers, server-side developers, and full-stack developers. The lines between these categories are permeable at best, but you'll want to be aware of the classifications as most jobs posted for web developers use these terms.

Client-Side Web Development

A client-side web developer works on the user interface-- the part of a web site that's visible to the user and that the user interacts with. Client-side web developers must have strong HTML, CSS, and JavaScript skills. Much of the work on the client-side is in CSS, writing code to make sure that the production site looks just like the prototype provided by the designer. 

There are many entry-level positions available for client-side developers. Some positions are available for those who have learned HTML, CSS, and JavaScript. However, most client-side developer positions will require knowledge of the popular libraries or frameworks that are commonly used on the client-side.

To set yourself up for success as you learn how to become a web developer, you should learn a couple of the most popular client-side libraries. One commonly used client-side library is jQuery. jQuery provides several convenient tools to make JavaScript coding easier. The Sister library, jQuery UI, provides well designed, responsive UI components for web sites.

If you want to work in client-side web development, you should also learn Bootstrap, which is the most popular library in use today. Bootstrap uses the responsive design paradigm and helps you create websites that are easily navigated across the range of screen sizes and devices.

In summary, client-side development is a great place to start your career. It offers you, perhaps, the most direct path to a first job and many opportunities to grow into other positions as your skills and experience increase.

Server-Side Web Development

Server-side developers work on code that runs on a web server and interacts with the user's browser. Typically server-side code is processing requests from a browser that requires interaction with databases, content management systems, or other complex platforms. Simple sites might have no server-side code running at all. However, whenever there are multiple users, financial transactions, or interactions with a database, server-side code is running.

Many times server-side developers work on enterprise applications. These are many times large applications for companies you've likely heard of.  Bank of America's online banking application, JetBlue's reservations and ticketing site, and Facebook are all examples of enterprise applications.  All server-side work isn't for large companies, however.  I once worked on a server-side application for a pet food distributorship that had only three employees.

Server-side work is more diverse than client-side work because there are more languages used (although not on the same project). Server-side developers often have competency in one (or more) of the common server-side languages. 

The most common of these server-side languages is PHP.  PHP has been around for a long time so there is lots of code that has been written in the language. PHP is somewhat easy to learn and powerful. It works with several different backend database systems and eCommerce systems. Popular content management systems like WordPress are written primarily in PHP.

Also popular on the server-side is Node.js.  Node (for short) is essentially JavaScript running on the server-side. It is popular because developers who already know the JavaScript syntax can adapt to using the language on the server-side fairly quickly. If you're a client-side developer working on the server-side for the first time, it's easy to become productive quickly with Node.

Other server-side technologies that are popular include Java, which is mostly used on larger enterprise apps, Microsoft's .net platform, and Ruby-on-Rails.

I would argue that to be a strong server-side developer you still have to understand the foundational client-side languages of HTML, CSS, and JavaScript.  In my own experience, I have seen server-side developers suffer for not knowing fundamental HTML and JavaScript.

Proprietary Developers

Yet another category of web developers are proprietary developers. These developers specialize in specific technology to build sites and applications. For example, some developers specialize in WordPress and only build sites with a WordPress base.  To do this kind of work you need a high level of expertise and the languages that support it. For example, many WordPress developers get away with knowing only fundamental HTML and PHP, which the WordPress content management system is built on.

Magento and Shopify are two eCommerce platforms with robust proprietary developer communities.  Frankly, the problem with this type of work is that you're only able to work within the platform you learned.  Without the fundamental client-side or server-side skills mentioned earlier, it's difficult to work in other domains.

Proprietary web development is best suited to freelancers who want to work with the same technology over and over again on similar projects. 

Full-Stack Web Developers

Full-stack web developers are the "Jacks (and Jills) of all trades," of the web development world. They can work on the client-side and the server-side. Full-stack developers need to be well versed in client-side languages, HTML, CSS, and JavaScript. They also need to be strong in one of the common back-end technologies like PHP.  Frequently, they work with one of the libraries mentioned earlier like React. They also may work with a full-stack framework like Angular.

As you may have guessed, full-stack development takes longer to learn and master because of the sheer number of separate technologies you have to master. There are, however, many job opportunities for people who can work on both the client-side and the server-side. 

I usually recommend that they, at first, aim to obtain the skills to become a client-side or server-side developer.  As you become more expert on your side of the fence, you can start adding other skillsets.  In general, companies are looking for developers who are really good at a couple of specific things, not generalists who are mediocre at several different things.

If you are going to freelance or start your own web development business, you almost have to be a full-stack developer. Very few business problems you encounter will be solved with server-side or client-side code only.

Which Frameworks and Libraries Should I Learn

For those thinking about how to become a web developer, all of these different languages, libraries and frameworks can be confusing. Everyone should learn the base client-side languages HTML, CSS, and JavaScript. Once you've learned those the roadmap can get a bit murky and depends on your individual preference and goals.

The key is, perhaps, not to get too hung up on learning any particular technology or stack. The trust is every employer is different and almost all have a set of technologies, libraries, and tools unique to them. Almost no one joining the team new is going to be skilled in every part of the stack used at a particular company.  (Although their job postings may make it look that way!)

The best thing you can do is have surety in your path and keep learning as the needs of employers are always changing.  Becoming a web developer means a career of learning as new technologies are introduced and old ones fall out of favor. 

Jobs and Salaries

As I write this Indeed lists over 22,000 open jobs for web developers. That's a hell of a lot!

Of these jobs, over 4,000 have been specifically marked entry-level, meaning they'll hire people who are new to the development field.  These entry-level jobs average $25- $50 per hour or $40,000 - $75,000 per year.

Geographically, these jobs are available just about everywhere. From major tech capitals like New York City (999) jobs to smaller towns like Tulsa (29 jobs). WIth COVID-19 causing so many to work remotely, companies are more and more looking at hiring outside of their traditional geographic area.  That means if you live in Boise, you can confidently apply for jobs in San Francisco or Dallas. Skills trump location in today's job market.

Like many industries, in development, the first job is the most difficult to obtain. You should consider interviewing for jobs that are less than ideal at first if they match your skillset and experience level. There is a tremendous "foot-in-the-door" philosophy in the tech field.  If you prove yourself at your first job (and keep your LinkedIn optimized and up-to-date) you'll find recruiters trying to pull you away from your first job offering better money, better benefits of a more desirable environment.

How To Become A Web Developer: The Road Map

Let's assume that you're brand new to development and want to know the most efficient path to your first tech job. The roadmap below illustrates a typical path to the first job as a web developer.

The image may look complex, but, it's really a singular path of how to become a web developer. Starting on the left, with the initial skills, HTML, CSS, and JavaScript, you continue to the right, gaining new skills, and becoming closer to job-ready. The graphic also illustrates the secondary skills you should be picking up along the way.  GitHub is hugely important as an initial skill because you should be storing all your code in a Github repository.  Most technical employers will simply examine your GitHub as evidence of your skills.  As you progress you'll pick up other secondary skillsets like unit-testing and database management.

Following the primary skills HTML, CSS, and JavaScript, the suggested path to becoming a web developer has you learning the two most popular and important client-side libraries, jQuery and Bootstrap. 

Once you've added Bootstrap to your toolbox, you'll build your portfolio with full projects that will also sharpen your skills. You'll create these projects up to professional standards and put them in a web-based portfolio as well as your Github.  Once your portfolio is completed. you'll be ready to look for an entry-level job as a client-side developer.

That's not where your path should end, however. While you're seeking initial employment, and during your first job, you should still be building your knowledge. You'll become more valuable as you gain more skills.  The next skills you should acquire is knowledge of an advanced client-side Framework-- like React. Once you possess React skills, you'll have the complete client-side skillset and just have to continue to build your experience, GitHub repository, and portfolio site.

 Should you want to acquire backend skills, you'll continue down the roadmap. PHP and NodeJS will further qualify you for many server-side jobs. Most server-side applications interact with some type of database, so it would be wise to acquire database management and coding skills as you work through this phase of your learning.

Training Options

Note:  Framework operates a training program that offers the entire pathway discussed above.  We know there are other training options out there-- and many of them are quite good.  There is a right program for everyone and I would encourage you to do your research before joining our program or any other.

If you're considering how to become a web developer, you're probably thinking about how to acquire the various skills reviewed discussed on the roadmap above.  There are several options available to you.

I am going to exclude four-year university degrees from this list. Four-year degrees have their place.  For the most part, a four-year degree is not a necessary step if you want to become a web developer. While always helpful, most degrees are in computer science, which is hard science that includes everything from hardware, to engineering to automata theory. I assume if you're reading this, a university degree is in your past, or not in your future.

Community College Web Development Programs

There are many excellent community college web development programs out there.  There are also some that use a curriculum from 1998. If you are investing in a community college program, make sure their curriculum is up-to-date. Ask what languages you will learn, and compare the list to the pathway shown in this article. Ask about job placement, and how many program graduates get jobs right away, or within a few months.

Many of these programs won't have any type of portfolio and GitHub development component to their program-- so be sure if you enroll in a community college web development program that you still develop your portfolio and create projects that will help you get your first job in the development industry.

Most community college programs last a year or two and cost between $4,000 and $8,000.

Self Learning

The most attractive element of teaching yourself web development skills is that it's free. If you have no budget it is still possible to become a web developer. Using free resources like blogs, YouTube, and Free Code Camp, you can gain many of the skills discussed in this article.

Perhaps, the most important element that you lose when you opt for self-learning is the community around you. College-based programs, online learning programs, and physical boot camps all have a social component. This community provides support and helps you stay motivated through the learning process. 

There are times when you are learning web development where things will get difficult. Having a community around you going through the same struggles may be the difference between completion and quitting when things get hard.

Web Development Boot Camps

"Become a Web Developer in 12 Weeks" they claim. For some, boot camps are a great option.  Lasting six, eight, or even 12 weeks, boot camps provide a very compressed education. If you join a boot camp you can expect to work on material and projects for 40-60 hours a week for the period of the boot camp. (They're not called "boot camps" for nothing!)

Right now, there's a glut of boot camp graduates on the market. With limited experience, a small portfolio, and a lacking GitHub repository, many boot camp graduates are having a hard time breaking into the industry because of the additional training they require.

Boot camps range from $5,000 to $15,000 for the program. There are a few free campus-based programs like Holberton. These programs are highly selective and are generally funded by employers looking for new developers.  These programs are a great deal if you can get in, and have one near you.

Online Programs

There are many different types of online programs. Some online programs mirror their campus-based boot camp counterparts.  These "online boot camps" can be very expensive and results are decidedly mixed. Make sure you look for a program that has a strong community and an updated curriculum. 

In my opinion, there is no reason for online programs to be as expensive as they are. With today's distribution technology, quality education can be had for very little money. 

Whatever paths or routes you choose, I wish you luck on your journey to becoming a web developer!

 

What are your experiences?  What has worked for you and has not? Respond in the comments below and share your own experiences as you've tried to figure out how to become a web developer.

Close

50% Complete

Two Step

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.