Hi, I'm Kavin, I guess I've always been a bit geeky. I'm currently working on my first website and learning HTML and CSS. I'm also quite keen on photoshop. I also want to learn PHP, MySQL and video editing at some point, but for now I'm still quite busy with my first web project, eventhough it's still quite basic.

I think that I'm quite creative and would love to become a web developer one day, ideally working freelance.

So which skills are the most important for a good web developer to have? What do you think that I should be focusing on?

Member Avatar

Be curious.
Be open.
Be honest.
Be thoughtful.
Be creative.
Be driven.
Be professional.

I'm thinking of about 100 more Be's. These are qualities rather than skills. Almost anybody can pick up skills like PHP coding etc., but it's what you do with them that determines if you're going to succeed.
These days a webdev will need good front- and back-end skills. JS and associated libraries (e.g. jQuery, Angular etc). PHP/MySQL and frameworks (e.g. Laravel, Zend, Symfony, CodeIgniter) or the MS product (ASP/SQL Server) equivalents.
Graphics could also be important, especially if you're creating bespoke sites instead of using templates. Logo design even. Photoshop is the industry standard, but Sketch for Mac is coming on really strong.
HTML and CSS are a given - but SASS is a frontrunner a the moment, so useful to know (perhaps a little bit of Ruby to help this along).

This type of thread will generate a lot of hot air as well as good solid advice. I'm just giving my 2p - it's not gospel, but it's not all rubbish either.

commented: That's Great... +0

1p, not as much value, but:

Ask a lot of questions.

when you are trained up in all the skills needed to create the site, as above
you will still have to deal with the client.
Clients never know for sure what they really want,
ask a lot of questions
codify the answers into a design plan
have the customer sign off on the spec
and there will be less rewrites and "but can it" later

Do not forget security if you want to be a really good web developer. Familiarize yourself with OWASP top 10 threats and guidelines how to handle them.

Regarding graphics skills learn vector graphics and software like Inkscape. It often helps when bitmap graphics does not suffice.

and realise that there are more things out there than php and mysql, things that often are a far better option.
Things like JSF/JEE and Oracle.

commented: Agreed. Sorry jw +15

Most bad web sites are not bad because of some technical failure, they are bad because they don't do what the user wants or expects.
Learning PHP or whatever is not hard - just takes a bit of time and effort.
IMHO the key skill is being able to see your web site from the viewpoint of a non-technical real user. You can practice that by letting your non-techy family members or friends try to use your site... do NOT give them any help or advice, just sit back and watch them get confused or frustrated. Then afterwards, ask them what they found confusing or hard.

commented: Yes, usability testing can be done relatively cheap. Okay... it takes time, but if the reward is happy users. +5
commented: I like this one ;.) +11

Yeh, curiosity, professional, blah blah.

There is only one skill needed: code.

If you want to be a web developer, start doing it. If you like it, keep doing it. You win. If not, you still win, just at another game.

When you finish the project you are working on, start another one immediately. Do it in PHP or Javascript. You don't have to spend any extra money to do those.

Code code code code.

One other thing. The idea of 'what skills' suggests that you are thinking about yourself. Stop that. You don't matter. Only the code matters. If, in a couple of years, you have some good code, then you probably have the skills. They don't need to be listed.

Did I mention: Code.

Member Avatar

There is only one skill needed: code.

Not sure if you can just code that you will make a successful career of being a freelancer. I have my doubts. If you get a job with a studio, maybe, where you may get pushed into a pigeon hole, but even these roles are getting harder to find.

As a freelancer, you will need to be able to do EVERYTHING! Heh heh - or pay somebody to do certain things for you (but money's usually tight when you start out). Marketing / advertising / SEO / Accounting / Communicating with prospective clients (as mentioned by AlmostBob and JamesCherrill). You may even be required to organize hosting (various options) and buying domain names. Changing MX records. A freelance webdev will certainly need to polish up his/her design and UX/UI skills - that's not always pure coding.

You could be the best coder in the world, but if your communication skills suck, then as a freelancer, so do you.

I bit the bullet last Christmas and started freelancing. Scary, exciting, overwhelmed, stressed, blissful, insane, rewarding, insightful, worthwhile. If I can do it, I reckon most people could, but you have to be prepared.

"There is only one skill needed: code"

... if you just want to be a coder, blindly programming whatever someone else tells you to code, doing the most hours of work for the smallest salary...
But if you want more than that from your job, you absolutely need the other skills mentioned in previous posts

I agree with the previous comments about jumping in and having fun. Come to this site when you get stuck and get help. As you gain experience you will learn what you like and what you don't like. You may find that you love the design and creative work but hate the coding or, that you love all of it. At sixteen you have some time to play and learn. Enjoy!

You may also like to learn how to program using the Python computer programming language :)

hmm, been building enterprise level web applications for 15 years, only ever touched python as a hobby.
Planning to do a bit more with it, but no, you don't need it as a developer. Now, if you're a network/systems admin it may be more useful, for things like automating certain tasks.

Kavin (or olivia) hadn't responded in any message so you know that we are talking to each other and not answering anything. We all love to teach others , to tell them our own wisdom. I respect the qualities mentioned but we are not responding to kavin any more. One quality that hasn't mentioned is always question everything.

I am not claiming that those who write theory were bad programmers or they had limited knowledge. I am claiming that the mix of programming is something dynamic and you can't never know till you try it.One thing that work over a period of time doesn't mean that will work in other variables. Variables in the programming community change each day , so what is the right or wrong is something you have to decide over many tests.

Read theory , understand it but don't stick to it. Recently in the PHP word we have theories that are collapsing by their own self e.g. Composer or NameSpaces where there isn't any reason. Is Composer bad or NameSpaces ? No … each one of them has its own use but always question why and make your own tests. That will reveal more to you than 1000 tutorials or books. Questioning and have your own understanding is something difficult , you should understand the reasons and the core , but it pays.
So question anything , even me.

The coding comes with time, the real issue is dealing with a boss or client. Ask lots of questions on what they want you to do or see. Give them lots of feedback and don't take on a project your not ready for.

I've been in too many meetings where the client/boss says that's nice but not what I want or am paying you for. If you have a better idea or suggestions, sell it to the client/boss ahead of time. Likewise make sure they understand the project goals are so loose you get "Scope Creep" where they say can you add this, and it blows you dollar/time budget.

It you are unsure of how to do what they want, don't commit until you research it. On a fixed price project, I had a programmer spend 30 extra hourss learning something, who should pay him for the extra time beyond the budget?

The code maybe tough the first tim, but the 100th time it's easy, getting into a clients head to see what they want is always tough.

Well You need to have all or most of the following Skills
1)The ability to learn new technologies.
2)Be a great graphics designer.
3)Know and Understand what programming is(JS, PhP etc).
4)You should be a researcher.
5)Last but not list,you should be innovative.

High BS tolerances. jk.

It does strike me however that most of the things you guys are suggesting are soft skills, as opposed to actually knowing the code. I would think not knowing the tools would be a red flag for any employer who needs something done.

Member Avatar

I think it should be given that if you want to be a programmer that you can programme. And the OP did mention being a freelancer. If you can't communicate, you can't get a contract. "Soft skills" are very underrated, especially if you are going to be self-employed.