With the web development industry booming, many are asking the question: How do I become a web developer? I think that’s the wrong question to ask. It should rather be: How do I become a successful web developer?
This is important to ask, because so many people around the world are web developers, but how many of them are successful at it?
My goal for this article is to equip you with the mindset, knowledge and skills to stand out from the crowd and make a success of your web development career — whether that’s at a company or freelancing for yourself.
This article is intended for aspiring web developers and web developers who are struggling to break through the “barrier of mediocrity.”
These 21 steps will help you succeed in web development and beyond.
1. Is This Something You’re Truly Passionate About?
“Passion” is a word so commonly used that the actual meaning gets distorted. It actually means “a strong and barely controllable emotion.”
Passion is not passive: it’s a pursuit to act. Most people hate their 9–5 jobs, but few do jobs they love and are passionate about.
It’s important to ask yourself these three questions:
- Does the thought of creating websites and web apps excite me?
- Would this be an exciting career for me to do?
- Would becoming a web developer be in line with the lifestyle I’d like to have for myself (and my family)?
If you answered yes to the above questions, you’re on the right path to becoming a web developer.
2. What’s Your “Why?”
This is one of the most important questions to ask yourself. Why would you like to become a (successful) web developer?
- To make a difference and change the lives of others?
- To build projects for others?
- To build your own projects?
- To earn a good income?
One of my “Whys” is to empower and equip others to make a positive difference in their lives as a whole, so that they can do the same for others.
When you’re tired, distracted, upset or not motivated, your “Why” will get you to act if you really want to fulfill it.
3. What Interests You?
Do you prefer logic and problem solving or design and visual?
If you prefer logic and problem solving, you’ll enjoy back-end web development.
If you prefer design and visual, you’ll enjoy front-end web development.
Backend programming is everything you can’t see on a website. Think of a server (a big hard drive with all the site’s information) in a location somewhere in the world, processing all the website data and then sending it to the browser.
Front-end programming is everything you can see, click and interact with on a website.
Maybe you prefer both?
4. Create an Action Plan
Once you figure out what interests you and what you will enjoy doing, it’s time to plan.
How much time do you have available to study? How much are you willing to invest on learning?
Create a plan that works for you. It may look something like this:
I only have 2 hours to study every day. My budget is under $500 and I’m interested in front-end web development.
After some research about what to learn and where, the outline should look something like this:
- Month 1: Learn HTML and CSS
- Month 2: Learn Bootstrap and design fundamentals
- Month 3: Create websites using HTML, CSS and Bootstrap
- Month 7: Focus on creating a personal portfolio website and building a personal brand
- Month 8: Reach out to businesses and organizations to create websites for them (for free to gain experience)
- Month 9: Focus on improving knowledge and see what you need to work on
- Month 10: Must have a minimum of five client websites on portfolio
- Month 11: Learn freelancing fundamentals and business essentials
- Month 12: Reach out to prospective clients, promote your work and get paid clients or apply for a job.
Note that this is just a general guideline for illustration purposes and not a definitive action plan.
If you want to do something great, it comes with compromise and sacrifice.
If you want to be a successful web developer or freelancer and you’re complaining that you don’t have time, then just look at your daily/weekly/monthly routine to see what you can remove to free up more time so you can learn more, develop your skills and apply what you know.
One of the biggest distractions I’ve eliminated in my life is watching TV: I’ve been “TV-free” for over 2 years now, and it feels great!
I’m not the only strange one out there who does this. Seth Godin, one of the greatest marketers and thought leaders of our time, is also a big advocate for not wasting time watching TV.
How badly do you want your “Why”? Don’t procrastinate or make excuses. Act and do it!
6. Discipline Trumps Motivation
Motivation is always good, but it can be temporary. Discipline will get you to act when you’re not feeling like doing anything or when you aren’t excited to carry on.
7. Social Media
It’s imperative to build your online presence, and social media is one avenue to grow it.
Make sure you have a profile on LinkedIn, Twitter, Instagram and Facebook.
8. Create a Portfolio Site
Your portfolio is your online resume.
I always say that it’s more important to show what you’ve done than tell people what you can do.
Three excellent portfolio examples are:
Look at these three websites above. They were beginners at some stage, but look how they showcase their work and expertise today.
If your portfolio is good enough, clients and/or potential employers will come to you. Build up a good list of projects/websites — even if you have to work for free for a period of time.
9. Contribute to Open-source Projects
Contributing to open-source projects shows a number of things like:
- passion for what you’re doing
- team-building skills
- your skill set.
The best part about it is if you really do it well, you can become recognized within the community — and that boosts your overall credibility as well.
John Resig, the founder of jQuery, said something interesting:
When it comes to hiring, I’ll take a GitHub commit log over a resume any day.
Here are five places to contribute to open-source projects:
10. Are You Stubborn Enough?
Web developers often face challenges along the way. If you have an error in your code, or if it’s not coming out how you planned, don’t just move on if you can’t find the solution, and don’t cut any corners. Be stubborn and figure it out.
Although it may take you longer to figure out, what you learn by being stubborn in this regard will remain with you, and you’ll be more efficient and effective in your future projects because of this.
11. Work Smart
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
Abraham Lincoln’s famous quote has really impacted me. It’s so easy to just focus on doing the technical side of coding or running a freelance business that one often neglects better and faster ways of doing things.
Successful developers work smart and achieve better results.
12. It’s Not Just About How Much You Know
I know more programming languages than you so I will be more successful.
It’s not just about how much you know, but rather what you do with what you know.
If it came down to interviews, the person who knows the most would always get the job, right?
If you live in the “real world”, we both know that this is far from the truth. It’s not only the skill set that guarantees you the job (or getting a freelance client), but also many other factors as well.
Experts in any industry are always learning to improve their knowledge and skill set. With web development, it’s even more important to keep learning.
If you studied C++ 20 years ago, and didn’t keep up to date with the new releases, your knowledge is pretty much irrelevant today.
No matter what your experience level is, stay relevant and always keep learning.
Who would you rather hire?
- a 35-year-old business coach who has just finished his/her MBA with distinction, or
- a 30-year-old business coach who dropped out of high school with no certifications but has experience in running three multi-million-dollar businesses and has sold two of them for a profit?
Experience trumps Theory. Don’t just say “I can build [insert thing here]”: that’s what every average web developer does. Show what you’ve done.
Once you start becoming more confident and you build up more experience, you need to price your services better.
This can make or break you. Would you prefer a salary of $50K per year or $90K per year? How about creating websites for $500 or $5000?
If I were selling you a bottle of wine and I told you that I have two bottles, one priced at $5 and the other at $55, you would probably think something is wrong with the $5 bottle, wouldn’t you?
The same pricing principle applies for your services.
Although this mainly applies to freelancing, the principle applies with negotiating your salary as well.
Being highly focused for 1.5 hours with no distractions is far better than 4 hours of being distracted by messages or YouTube or funny GIFs with some work in between.
Eliminate all distractions as much as possible and be productive for a highly focused time frame.
Check out the Pomodoro Technique for this.
Limiting yourself to just learning “X” programming language is not the right way to go.
To improve your chance of being successful, it’s important to learn other skills like basic marketing, negotiation, communication and social skills as well.
Look at the most successful developers out there: they’re well rounded, talented individuals who have not just focused on coding.
18. Interact with Others Online
Join coding communities, Facebook groups, Twitter chats and other platforms and don’t be afraid to ask (“stupid”) questions.
Ask and answer questions on places like Stack Overflow, Reddit, Quora and blogs as well.
19. Go to Meetups and Socialize
This is where it comes to getting out there and connecting with others.
I am a huge introvert. Seriously. People call me a hermit crab. Guess where I’d be in a group setting? Yep, in the corner…
If you’re an introvert (like I am), you need to realize that, at some point, you need to get out of your comfort zone and engage with others.
View meetups near you, using services like Meetup.
PS. don’t just go to meetups and events for developers. If you’re a freelancer, go to business events as well. After all, how often do developers hire other developers?
20. Have a Split Personality
You need to think like a site visitor and as the business owner (of the website).
As the site visitor, you need to be thinking: What is going through my mind at every stage I’m on this website? Am I getting the answers I came here for? Is the site fulfilling what I wanted? Do I trust this business? etc.
As the “owner” of the website, you need to be thinking: Is my website answering the questions and doubts my site visitor is thinking at this moment? What can I do to answer their questions? What can I do on my website to convince the site visitor to perform the action I’d like them to take?
21. Never Give Up
Successful people fail regularly, but one undeniable trait they have is they never give up and find new and better ways of doing things.
Sometimes the only thing separating you from success or failure is the willingness to continue.
Never give up on your dreams, aspirations and your purpose.
Don’t ever think you can’t do something and be successful at it. If you need someone who believes in you, I do!
I hope this short article has influenced you in a positive way. I’d love to hear from you in the comments below.
Jump Start Git, 2nd Edition
Visual Studio Code: End-to-End Editing and Debugging Tools for Web Developers
Form Design Patterns