21 Steps to Becoming a Successful Web Developer

By Kyle Prinsloo
We teamed up with SiteGround
To bring you the latest from the web and tried-and-true hosting, recommended for designers and developers. SitePoint Readers Get Up To 65% OFF Now

Tips for becoming a successful developer

Trending posts on SitePoint today:

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:

  1. Does the thought of creating websites and web apps excite me?
  2. Would this be an exciting career for me to do?
  3. 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.

For more on becoming a successful developer, check out the Versioning Show episode on “What Makes a Good Engineer”…

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 4: Learn JavaScript
  • Month 5: Learn more advanced JavaScript
  • Month 6: Create websites using HTML, CSS and JavaScript
  • 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.

5. Act

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:

Robby Leonardi


Adam Dannaway

Adam Dannaway's portfolio site

Denise Chandler

Denise Chandler's portfolio site

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:

  1. GitHub (read this article on GitHub for beginners)
  2. freeCodeCamp
  3. Automattic
  4. Angular
  5. Go

10. Are You Stubborn Enough?

Why stubbornness?

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.

13. Growth

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.

14. Experience

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.

15. Pricing

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.

16. Productivity

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.

17. Skills

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.

We teamed up with SiteGround
To bring you the latest from the web and tried-and-true hosting, recommended for designers and developers. SitePoint Readers Get Up To 65% OFF Now
  • Sponsor Black

    22. Subscribe to Sitepoint Premium. It’s worth every penny.

  • Kyle Prinsloo (SWD)

    Thank you Sruthy! Really appreciate that

  • Gabriel

    the most important: 21. Never Give Up

  • lee jing

    Thank you! A very useful article!

    • Kyle Prinsloo (SWD)

      Thanks Lee! Appreciate it

  • Myrna Dominique

    I am a newbie starting in the feild and i
    really appreciate you for writing this article. Thank you.

    • Kyle Prinsloo (SWD)

      Thank you Myrna :) I’m glad I could help

  • Kyle Prinsloo (SWD)

    Thanks very much Charles! Really appreciate your feedback.

  • I would say in your step four, that you should never offer to do anything for free. Not even as a beginner. It sends out signals like: “Hey, take advantage of me!” and “I don’t really know what I’m doing, so I don’t want to charge you for it”.

    I’d also highly recommend learning how to make a fully functioning website without using any frameworks first. Because if you know how everything works it’ll allow you to make better decisions later on, based on what you need and not what the community tells you it thinks you need. If there were a perfect set of rules after all, there wouldn’t be over 30 JS frameworks alone.

    If you want to set yourself above the rest, don’t just learn how to code anything and everything, try to uncover good and bad practices. The web is full of websites that are littered with bad practices because a developer, designer, or (more likely) a project manager thought something was fun, but in reality those things are terrible and don’t really return any value to your clients.

    Always validate your websites with the W3C Validator, because if your code doesn’t validate, did you really write real code? And because if it’s not valid it may break as browsers update themselves. And accessibility check your websites too; an accessible website is usually excellent for SEO and, in the UK at least, accessibility is a legal requirement. W3C WCAG 2.0 Level AA is recommended as a minimum.

    • Kyle Prinsloo (SWD)

      Thanks for your comment Philip.

      Great advice!

      As for selling things for free, you do have a point there. From a practical reason however, in my opinion it’s far better to have 5 websites to your name for free compared with zero or even 1 paid website.

      You can get a lot more referrals and more clients with 5 websites to your name as well.

      Also, this is temporary. It’s not a long-term thing as that would be foolish. It’s more to build up experience and make you more confident to get clients.

      There are many philosophies on the debate between charging for your first projects or doing a few for free to get started.

      It’s interesting to see that most people who advocate charging for projects at first are those who are already seasoned professionals with over 10 years experience so it’s much easier for them to get clients than for beginners.

      My conclusion is that charging for your first projects and NOT charging for your first projects can both be the right thing to do. It depends on a lot of factors at the time. We personally just have different views on which one is best.

      Appreciate your feedback :)

      • I would strongly recommend that any developer’s first professional websites are actually done via their first professional employments, preferably in a web or digital agency. The best way to learn isn’t from books or even the internet, it’s from surrounding yourself with people who have more experience and are better than you. We’ve all stared at code for a few hours wondering why it’s not working; those hours Googling for answers and waiting for Stack Overflow answers can come in seconds from your colleagues.

        I certainly do have over ten years experience now, but I didn’t have my own clients until I’d been a web developer for four years. There were so many things that I’d never heard of, and didn’t even know existed until I worked at an agency. Right at the beginning experience is much more valuable than potential income, and the best way to gain it is from stable employment.

        How do you know when you’re ready for your own clients? At the beginning, you’re the guy asking all the questions. Why doesn’t this work? How do I do this? When you’re ready, you’re the guy people ask.

    • terry7289

      funny… still, after all my years as a developer, I find it easier to code sites the traditional way, no frameworks… but well, professionally I’m a front-end developer, do back-end only for my own stuff….. I find frameworks confusing….. just a thought….

      • The thing about frameworks is that they extrapolate away a lot of the things you need to worry about, which means you never really learn how to do those things. But the effect is that they also take away a lot of the control you have, and give you a false sense of security.

  • Kyle Prinsloo (SWD)

    Thanks Jessrel!

  • Mark Andrew

    Being a developer I can say that becoming a successful developer is not so easy thing and may need lots of fundamental and technical knowledge around the trend. For an initial level developer, who is passionate about web creation, but doesn’t have enough knowledge how to proceed, then perhaps it is best to seek the advice of professionals. There are several things to learn in development field as everyday a new technology comes up in the market and accordingly a developer need to brush up his skills. I also started my career with small projects, and today I can proudly say that I am successful developer in US based company http://www.cmswebsiteservices.com/ . I have struggled through various phases to match up the market drift and innovative thinking of clients. I am not saying that innovative thinking will work only, but along with innovative thinking, one should be capable enough to understand current trends that play a key role in web development. An ideal developer knows how to catch the nerves of target audience. Before jumping into the development process, he first analyzes the requirements of client, then he puts his development magic to create useful and meaningful applications.

  • Bilal Haider

    Thanks A Lot For This Wonderful Article.
    I Want To Know About Your Hosting Plans.

    • Kyle Prinsloo (SWD)

      Thanks Bilal!

  • Stephen Cunliffe

    There’s a big piece missing here. As soon as you get past a basic “business card” website that just lists a company’s staff, products/services & contact info you need to tie into a backend of some kind. This requires real programming knowledge, DB/SQL, security, authentication, APIs, encryption, file system, backups, DR and a whole lot more. I’m not saying it can’t be done, but let’s not paint it as an easy thing that can be “learned on the fly”.

    • Chris

      What would you advise for someone interested in learning more advanced back-end development? Are there any particular resources that you would point someone to?

  • Jonathan Tolibas

    Hi, thank you so much for this article. I’ve been doing web development for almost four years but still I encounter many roadblocks and almost give up. And after reading this it makes me realized that yah, why am I doing this? I should never give up :)

    • Kyle Prinsloo (SWD)

      Thank you Jonathan! Keep going!

  • Michael Dodson

    Nice article Kyle. The things you said about not giving up, being focused, leaving your comfort zone and fighting through problems (coding or otherwise) when you aren’t at your best are so true. How well I can relate to what your wrote here. Glad I found this site and this article!

    • Kyle Prinsloo (SWD)

      Thank you for your kind words Michael! I’m glad you found it helpful


    Thanks Mr Kyle for this Post. I have one question? can you explain more what you wanted to say at the pricing part? especially this “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?”

    • Kyle Prinsloo (SWD)

      Hey Eli :)

      Thank you for the comment and question.

      The point of that was to illustrate the perceived value of something when it’s compared with another product/service at a different price point.

      So let’s use this example:

      A client asks for a quote to do a project and person A charges $300 for the website and person B charges $5,000 for a website.

      The client would either think that the $300 is a good deal or way too cheap and think the quality of the work won’t be good.

      Another example is:

      I have a ‘genuine’ Rolex watch and I want to sell it to you for $250. What would you think?

      It’s probably not genuine because these watches sell for well over $5,000 dollars.

      Bottom line is pricing is very important. There is a lot to mention about this and I’ll definitely write more about it at some point :)

      • eli KPONBLANOU

        Thanks Mr Kyle, everything is clear now.

  • White hacker

    Thanks Kyle Prinsloo a much huge to you from Nigeria.
    Probably a Junior White hacker.
    This Article gave a big hope to focus on web developing.
    Many Thanks Brother

    • Kyle Prinsloo (SWD)

      Thank you very much, I appreciate your kind words :)

  • Adejo Edoh

    Wao…. This is a great article.. It really influencing my life as a whole

    • Kyle Prinsloo (SWD)

      Thank you Adejo, I’m glad I could help in a small way :)

  • Prashanth Bodhayan

    Thank you Kyle Prinsloo. for this Wonderful Writeup

    • Kyle Prinsloo (SWD)

      Thank you Prashanth :)

  • Ishtiaq Marwat

    thank you brother.I love coding more than anything.valuable post dear.

    • Kyle Prinsloo (SWD)

      Thank you Ishtiaq :)

  • pradipta ghatak

    Thank u fr postig such an accurate and to the point article

    • Kyle Prinsloo (SWD)

      Thank you Pradipta :)

  • Alex Webb

    This is a horrible article for people just starting out putting over emphasis on “passion” and an expectation of breaking your back to make it.

    Points 1, 2, 7 and especially 10 are redundant. Being an social media superstar does not make you a good developer. The best developers I know have no social media presence because they simply don’t need it.

    In my opinion, if you want to be successful all you need to do is work hard on your fundamental technical skills, allow those around you to mentor you, and be open to other opinions. Soon you’ll be forming your own opinions and helping guide others as you progress in your career.

    • Kyle Prinsloo (SWD)

      Thanks for your comment Alex.

      Although I do think you narrowed in on a small section in the overall article, I appreciate your views.

      Based on your opinion of what makes a successful developer, is that just an opinion or something you’ve seen actually works?

      The reason why I am asking is because there are many well-known developers out there who advocate learning many other skills (including social media) besides for the basic fundamental language.

      Example: Rob Percival, who created the most popular coding course in the world, also has a course teaching digital marketing and he’s a huge advocate for social media as well. This is after teaching hundreds of thousands of students.

      This conversation can go on for a while I’m sure, but my opinion is that this is a topic that is too complicated to merely narrow it down to knowing just the technical fundamentals and being mentored, etc.

      Nonetheless, I appreciate your viewpoint on this :)

  • I think one of the big things here is your motivation. You have to love the job and really want to do a good job for others. One of the ways you get better is by working on harder projects and collaborating with other developers.

  • Mark Esmade

    thank you Kyle Prinsloo for the motivational post. Very well said.. Im a aspirant web dev and thats my dream.. Im currently doing self study in html and css. hopefully in a year i could have my portfolio and get a job. God bless!

    • Kyle Prinsloo (SWD)

      Big thank you Mark :)

  • Letsoni Terror

    Terror here, i am doing IT at University Of South Africa. I love coding with all my heart and i want to become web developer. which steps can i take to be successful or to get web developer’s job?