The Web Developer FAQ
Tags: webdev, beginners
Published: 2019-12-23 17:48:23

There are millions of websites on the Internet.

Each and every website has come from the minds of a web developer in one way or another. Web developers are in charge of the layout, the UX, the features, and functionality of every website you see.

There will always be demand for web developers. Websites are always changing, features and functionality are added, and the look and feel of a site always needs to be up to date (and design standards have probably evolved in the time it took for you to read this sentence).

The Bureau of Labor Statistics says web development demand is expected to grow 27% from 2014 to 2024. Makes sense, when you consider the increasing prevalence of the Internet inside everything.

If you have an eye for detail, an aptitude for programming languages, a skill for communication, and an interest in building the Internet of tomorrow, web development is up your alley.

So, if you’re batting around the idea of joining the world of web dev, you may have a few questions to start off.

Here are the answers.
___

## What is a web developer?
A web developer is a programmer who makes websites, and apps for the World Wide Web. A web developer builds a website from the bottom up, developing everything from layout to functions and features on the page.

A web developer makes what you’re looking at right now.

A good web developer can make almost anything happen on a website, and can build custom code to accommodate the needs of their client. Web developers have an intricate understanding of various programming languages and how they’re used.

A web developer might work at one organization as a permanent full-time employee, or work as an independent consultant.

A web developer salary depends on what kind of work you’re involved in, your location, experience and level of seniority. [Check out this resource](https://gooroo.io/analytics#.XFiIu1xKg2y) to see up-to-date web developer salary information.

## Are a web developer and a web designer the same thing?
Not exactly. Here’s how it breaks down:

A **web developer** is more concerned with functionality and features of a website, and versed in the programming languages required to create them. Web developers will still need to understand the aesthetics and art direction of the site as they implement features.

A **web designer** will create the logos, graphics, and layout that determine the look and feel of a website. Web designers will use software like Adobe Photoshop and Illustrator to create these materials. A web designer with a knowledge of code can help him/her better communicate with the web developer.

A developer with skills in both development and design is extremely valuable, and could make for a great PM (project manager) on any web project.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/nikz4mk0p6ccdox88wx9.png)

## What does web development entail exactly?
Web development isn’t just building what the user sees. There’s a lot underneath the hood of a modern website, and a good web developer can traverse across the entire terrain.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/72r5q4xpyh9wi4a1iuj3.png)

### Client-side scripting:
Client-side scripting refers to the creation of a website’s layout, look and feel, using languages like HTML, CSS, and JavaScript. It also refers to the creation of web apps that execute themselves inside a user’s web browser.

Client-Side languages:
* HTML
* CSS
* JavaScript
* Jquery

Web developers who specialize in client-side scripting are known as front-end developers.

*Interested in the front end? Check out Educative’s [Beginner's Front-End Web Developer learning track](https://www.educative.io/track/beginning-front-end-developer) to get a crash course in the front-end languages you’ll need to learn.*

### Server-side scripting:
Server-side scripting is used by web developers to create the back-end of a website. It involves constructing the framework allowing the database of the website to communicate with the user’s web browser. This is done by embedding scripts into your site, where images or information will be displayed upon a particular action taken by the user.

Server-side languages:
* ASP.NET
* C
* Java
* PHP
* Python
* Ruby

Web developers who specialize in the back-end are known as **back-end developers.**

### Database technology:
Every website needs a database to store its code, images, files and other data. A well-rounded web developer is familiar with relational database management systems (RDBMS).

Popular RDBMS for web-based apps:
* Oracle
* Microsoft SQL Server
* MySQL
* IBM DB2
* Apache
* MongoDB

A large scale web project may divide these tasks among multiple web developers (one developer handles the front end, another handles the back end). But small projects require web devs to have a good understanding of all three parts.

A web developer with a broad knowledge and ability to work in all parts of web development is known as a **full-stack developer.**

Get an interactive overview of all the moving parts of web development with [A Complete Guide to Launching Your Website: From Local to Live](https://www.educative.io/collection/10370001/5654729883385856).


## What makes a good web developer?
It takes more than an awesome portfolio to score a full-time web developer position at a company. You can do the work well, but can you work well with the company?

Here’s what hiring managers are looking for:

**The skillset (obviously).** You’ll need to have a great grasp of the programming languages and frameworks to get around in your job (see above). Smart companies are looking to continually improve their processes, which means the code you’re using will constantly be changing. You’ll need to keep up.

**Willingness to keep learning.** Don’t be stuck in the way you’ve always done things. The industry moves at an exponential rate, so web developers need to be on the cutting edge of all web technology. Plus, your knowledge will give more ability to teach others on your team.

**Ability to solve problems.** All developers solve problems every day. A great web developer knows how to figure out the direction the solution to a problem needs to take.

**Be flexible.** Some web developers might consider their code a work of art and might not want to mess with it. But modern websites are always changing. You’ll always want to improve upon what you previously built. Listen to others and get input. There are infinite solutions. Another team member might find a solution you would have never thought of.

**Excellent communication skills.** Sometimes you won’t be able to solve a problem. This is where the ability to speak up comes in. You’ll have to communicate what the problem is to your team and why it can’t be solved. Or if you feel the need to pivot in direction, you’ll need to let others know why.

**Ability to get stuff done.** You’ll be working with clients as a web developer, so that means you’ll have deadlines (since they will). You might fall into multiple problems, which could cause projects to become delayed – and you’ll need the ability to power through them all, even when you’re ready to give up.

**Time management ability.** This is important for the same reason as the above point. Your team may work in SCRUM and have sprints every week, or have some other project management system in place. But it’s still on you to prioritize the multitude of tasks you need to do to help your team meet its goal.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/pdoekf0gx3p32d3zk1jw.png)

## What are some web development tips for junior devs?

Yeah, some of these are obvious, but it never hurts to be reminded.

**Constantly keep updated on all the latest web technologies.** Languages and frameworks are updating all the time, and so are the latest design trends. These sites are indispensable for keeping updated on all the web development topics:

* [Smashing Magazine](https://www.smashingmagazine.com/)
* [A List Apart](https://alistapart.com/)
* [Dzone](http://dzone.com/)
* [CSS Tricks](https://css-tricks.com/)
* [Web Designer Depot](https://www.webdesignerdepot.com/)

**Look at lots of cool websites**, and figure out how they work. A little inspiration goes a long way. The website [awwwards.com](http://awwwards.com/) showcases the latest in web design on a daily basis.

**Learn from those with lots of web dev experience.** These more experienced web developers can help you maneuver in the world of web development–not only can they share insights that only those with a lot of experience would know, but they can also give you a better idea of what’s to come.

**Comment your code.** This is especially important for junior developers who are still learning the ropes on web development. Commenting code ensures that the whole team will understand your code. Don’t go overboard, though– too much commenting makes the code messier. And if the code gets updated, the comments need to be, too.

**Build stuff.** The insights you learn from making (and breaking) your own website cannot be taught by anyone. Now is the time to start building pieces for your portfolio. Sign up for Github and download a project, then take it apart and put it together your own way. Study the source code. Copy and paste pieces of the code into your own project to see how it works. This is how many web developers learned how to do what they do–sure, it’s not the quickest or most efficient way to learn. But we have a solution for that later on.


## What education or experience do I need to get into web development?

You don’t need a university degree to be a web developer, or any programmer for that matter. But it certainly doesn’t hurt. Universities offer more structure and a smoother learning experience than teaching yourself everything. But costs of attending a university could be a blocker for many.

There is a tremendous wealth of web developer knowledge you can glean from a simple Google search. Forums like StackOverflow have huge communities of web developers ready to answer any question. But it couldn’t be called the most time-efficient way to become a web developer.

**Attend a coding bootcamp.** A coding bootcamp is a technical training program that enables beginning developers to focus on the most important (and employable) aspects of web development. Bootcamps are a more cost-effective way to get valuable education, and span anywhere from six weeks to two years. Bootcamps can also teach other skills, like networking, putting your portfolio together, and building your resume. Bootcamps are hosted worldwide and all year long.

**Learn online.** Any developer will tell you that putting your new coding skills into practice as you learn is the most efficient way to learn. One great source for university-level courses is[Educative](https://www.educative.io/). We specialize in the idea of “learning by doing.” Our web development courses are chock full of live coding playgrounds (no environments to install), plus quizzes and fun code challenges to test your knowledge. 

Start your [web development journey](https://www.educative.io/track/beginning-front-end-developer) today for free! 


### Additional resources:

Article: [The Roadmap to becoming a Front-End Developer](https://blog.educative.io/roadmap-to-become-a-front-end-developer/)

Article: [A Beginner’s Guide to Web Development](https://www.educative.io/blog/beginner-guide-to-web-dev)

Article: [Learn JavaScript OOP: A primer for web development](https://www.educative.io/blog/javascript-oop-primer)

Course: [Web Development: A Primer](https://www.educative.io/courses/web-development-a-primer)

Course Track: [Become a Front-End Developer](https://www.educative.io/track/beginning-front-end-developer)
___

*Any other questions? Let us know in the comments below and I'll be happy to add the answers to this article.*