I had a dream!
This dream was to write an article with a title beginning by “10 tips to…”. I don’t normally like them so much (yes, they are often pure clickbait) but let’s face it, humans like lists. That’s why we have the
ul tag in HTML.
When I finished to write this article and I counted how many parts I had, I was so full of joy and love! I had 10! The Saint Grail for an article-list!
You are a web developer and you want to improve? Improvement is indeed something you should have in mind: it will make your work much more enjoyable. It will make it more qualitative for the sake of your boss / clients.
As everybody, you want to enjoy your work and produce good quality. So keep reading!
1. A good developer should be interested
I can’t picture a good web developer without a minimum of interest about web development. It’s primordial on the long run: interest will help you to continue to progress and not get bored.
Boredom means efficiency and curiosity going down. Plus you won’t enjoy the 8 hours a day you spend at work. So, what’s the point? If you don’t like web development, find something else which please you.
Now if you are a web developer because it’s easy or because you want to make a lot of money, you are going into a wall. Web development is far from easy and you definitely need another motivation than just money.
2. A good developer should be curious
If you feel that you like web development and you want to know more about it, congratulation! You are a curious web developer.
Interest and curiosity goes together. Curiosity is a good way to assess if you are interested enough to code all day long.
Obviously web developers are not interested and curious all the time. When I am tired or when I spent my day on difficult bugs, I am not very curious anymore.
It’s a general state. If you are mostly curious and think about development often, if you want to improve and be good at your craft, you have the most important qualities a web developer should have: interest and curiosity.
This is the necessary foundation to be a happy and good web developer.
3. A good developer should be willing to learn
With curiosity and interest will come a will to learn about web development. Simply because you will try to be good at coding, you will try to learn how to improve your code.
Therefore you should try to learn from books and from other developers. You will need some discipline and commitment to be effective and productive in your learning process.
4. A good developer should be implicated
I have a question for you: what’s a good web developer’s main goal?
The answer seems easy. A web developer have to produce efficient code. When the code works, your boss is happy and everything is fine. You can be proud of your salary at the end of the month.
Not that fast! I have a bad new. Making your code working is the minimum a web developer should do. For a good web developer, the minimum is not enough. If you want to be appreciated by your boss or by your clients (and becoming rich and famous) you need more. You need to create business value.
A web developer is a problem solver. First, You should be able to solve technical problems with your skills (develop new functionalities, fix bugs).
Second, you should go beyond the tasks assigned to you. You should propose better technical solutions and always be critical towards any specifications.
Third, you need to think beyond the code. With experience you will be able to spot bad culture in a company or you will see some possible organizational improvements.
At that point, don’t be shy. Search for a solution and help your company (or clients). You don’t need to solve problems only in your code. If you can give precious advice on basically anything, your value will grow and grow.
This is what I mean by implication: it’s your ability to bring more. When people ask you to do something, do more. Bring as much as you can on the table depending on your experience and capacities.
Remember: you are a problem solver. The kind of problem you solve should be very broad.
5. A good developer should always try to improve his code
Coding is meant to create functionalities which work, for sure. It means as well communicate to other developers what the code is doing.
Look at Albert, a good web developer. Albert knows that in three months he won’t remember his code. He knows that a lot of other developers will implement new features on his application. He knows that when he will quit his company to have a crazy career in Google, other web developers will have to understand his code. He won’t be there anymore to explain it.
Albert is a smart, clever, intelligent and beautiful web developer. He tries as well to make his architecture more solid, his code less prone to bugs.
In practice: good naming, good organization and good unit tests are three ways you can dig in order to improve your code. Follow the good practices from the best (and read their books).
Your code needs to be as future proof as possible: clear, simple, easy to extend.
The task is not easy, but that’s why we love so much developing. For the challenge!
6. A good developer should embrace challenges
Rope climbing is definitely a challenge for mini R2
Challenges. This simple word rise some contradictory feelings in my little heart.
Obviously during interviews with big bosses I want to work for, I will prone challenges. You want me to kill a lion with my own hands while an elephant charge me and one of my leg is eaten by piranhas? What a challenge sir! No problem, I can make it!
Everyone is afraid by challenges. Simply because it’s difficult. What happen if you fail? Will your colleagues mock you till the end of time? Will they begin to create meme with your face? Maybe the whole Internet will define stupidity with your name?
Here’s a great tip: you have to work on yourself to accept that failures are opportunities to learn. It is a chance for your personal growing.
I can reassure you: everyone is afraid by challenges.
However they should have an attractive power as well. Plainly because you will learn a lot from them. You will grow a lot from them. Boredom will become an idea, not a reality anymore.
If you want to be good, you need challenges, much more than anything else.
So go beyond your fear and bring back some vanquished challenges!
7. A good developer should be humble
I had to work with a developer who simply didn’t want to learn. He was saying it himself. Let’s call him Dylan.
Dylan was sure everything he was doing was good. No matter what argument or even books you would reference, the discussions was always going on and on. He had a great imagination to create arguments to prove himself (and the others) he was right.
Don’t be like Dylan. As my dear friend Socrate said: “I know that I know nothing”. Learning in the web development field is a process which doesn’t end. More you learn, more you will discover that you can learn much more to improve your work
In order to learn you need to be open to the idea of learning. If you know everything, if everything you do is good, what the point in learning?
Obviously even if Bill Gates himself tells you that your code is wrong and you have solid arguments against his arguments, you should discuss with him. The key word is solid here. Arguments are meant to prove a point for the good health of your work, not to prove your are right to the face of the world.
Just try to listen to the other developers. It’s an easy concept sometimes difficult to follow. When somebody point your weaknesses and failures it’s easy to feel attacked. Still, if you consider and eventually accept those failures, you will grow faster and stronger.
You will become an even better developer.
Don’t be too prompt to judge other developers neither. After Dylan’s story I am sure you can see me yelling at the moon: “Dylan is the worst developer ever! He should be burn on the village square!”.
I am trying not to. Sometimes web developer produce bad code because of time pressures, bad company organization, personal problems and whatnot. Sometimes they are not very confident, that’s why they don’t like to be wrong. We have all our weaknesses and we all produce bad code. Don’t judge too hardly or you will be hardly judged as well. Empathy and patience or keys here.
The goal is not to qualify developers with every name you can think of (from “good” to “worst disgusting slug”) but to help them.
Try to communicate your knowledge, try to make developers grow like little flowers. Teaching is highly beneficial for your growth as well. Maybe your nemesis web developer will teach you a lot in return!
Pair programming and code review are two awesome tools to make those ideas a reality.
In short: don’t blame developer or the code or whatever, try to solve the problems you have with them.
8. A good developer should have discipline and commitment
Having self discipline is important if you want to go deeper and deeper into your craft.
Simply put, I think hard workers are always rewarded.
That said, hard work is not always something synonym to torture, sweat and blood. It can be very enjoyable.
It is true as well that because you like web development you will be able to work hard for it every minute of your life. Procrastination can hit when you expect it the less.
That’s why discipline is important: if you create work habits, if you have a good organization, it will be way easier to be productive and to increase your skills.
Being productive doesn’t mean working a lot but working efficiently. To do so, you need to manage your time and you need to know yourself pretty well to achieve the best you can do.
Create a habit structure around web development, plan your work, use organizational and time management techniques (like Pomodoro) can help you to procrastinate less and to improve the way you work.
Take this blog for example: I enjoy writing but I didn’t do it in a consistent way for years. Now my organization plan allow me to write 25 minutes each mornings and I achieve a lot more! The simple power of habits.
You need as well to be focused on your tasks. Close Facebook and everything throwing you notifications. Do one thing at a time. Nowadays focus become more and more scarce, you can make a big difference by being concentrated on your work.
Again, my article on learning as a web developer can give you some tips on the matter.
Keep in mind that it is not easy to create commitment and discipline. Don’t be hard on yourself, go step by step and don’t give up!
9. A good developer should have creativity and imagination
Web development is not a cold area where only pure knowledge and logic is rewarded. It is a creative place as well where ideas are more than welcome.
Many web developer, like Roger, comes to work at 9 o’clock and code, code, code till it’s the end of the day. The day after is the same. And it’s starting again, and again, and again.
Roger doesn’t really create anything ; he is applying good old development recipe, whether they work or not. It doesn’t matter, Roger feels he is doing his job. It is not necessarily good, but he feels like it is. He was busy all day, so his work should be good.
Only writing the last couple of sentences bored me as hell. Even if I like coding I like trying to improve things around me. As stated before, don’t be only a coder, be a problem solver. In order to solve problem efficiently, having imagination and creativity to find good and sustainable solutions are necessary.
The code is just a tool. You need to use it to bring as much as you can to your clients or company you work in.
Trust me, it is more fun that way. Having good and solid knowledge about web development is mandatory, but don’t stop at this point.
Create your own solutions. Experiment. Try to find better and more efficient way of coding, fix your mistakes and try again.
You will become more valuable to the development community because you will have new and fresh ideas. Communicate your conclusion, discuss them with other web developer. Try to bring business value to the whole web development field.
You can write blog articles if you have ideas, speak about your conclusion on x or y technology for example.
Contribute on github and try to bring your own creativiy. Give advice and discuss with other web developer about them.
By being creative and imaginative, you will for sure become better and better with a deeper understanding of web development.
10. A good developer should rely on facts
To improve yourself or to point problems in your company or for your client, you need facts. You will never convince anybody with your feelings. “I feel that the application is not well coded, let’s rewrite it!” doesn’t sound convincing for people holding a business. They invest money in you, and you don’t invest in feelings.
Instead, bring data. The application you work on is too slow, you want to improve the performances? In that case measure those performances, spot the problems, do some research why your application should be fast.
Bring all those information to the people you need to convince, on the business side or on the development side. If you need to convince Albert the team leader, it is always good to quote famous and well known developer. Their words have more weight than yours.
You need to create business value, so you need to prove what you want to bring some. More you have arguments and data, better it is. It is sometimes not easy to convince but with factual information, it is easier.
A great developer is valuable
I hope this article gave you some keys to become even better and more valuable.
Increasing your value in the web development field should be highly motivational. Having value means the opportunity to choose better projects, better jobs, better clients, better everything.
It brings as well value in your life. You will enjoy web development even more!
Don’t be too hard on yourself: nobody is a perfect web developer. You need to value yourself as realistically as you can. Nobody is the worst, but nobody is the best neither. We are all in between, and we all have doubt about ourselves.
Don’t let yourself or the other judge you to hardly: try always to get something out of each challenge and try to grow even more.
A last point: if I could define a good web developer in a short sentence, I would say that he should be able to transform complex problems into simple solutions.
Now go, web developer, make the web development field even better!
R2 is on the way to make some big changes in the web development world!