101 Tips to Make You a Better Developer
Tags: webdev, productivity, career, beginners
Published: 2020-12-08 07:38:43


Being in the world of programming comes with a lot of challenges and opportunities for developers like you and me. There’s a lot to learn and master — we have JavaScript frameworks like React, Vue, Angular, and Svelte. We have static site generators, the JAMstack, serverless, Git, and the list goes on.

While the broad ecosystem of web development has something in store for every individual, it can be really hard to keep track of the ever-changing technologies. And not only that, but there are also more questions for you to answer: Where do I want to work and with who? Do I want to become a full-stack developer? Do I want to work in a permanent role or go for contracting? How can I develop myself and acquire new skills?

I’ve put all my knowledge and experience into these 101 tips that might help you in your career as a web developer. Whether you’re just starting or already have some experience, these tips will hopefully help you. This list is by no means complete and certainly not every single point will be a perfect fit, but I hope you can pick some of them for inspiration or guidance.

---

## 101 Tips to Help Web Developers

__1. Try to understand Git concepts__

Knowing the basic commands is good, but try to also understand the underlying concepts.

__2. Learn the concepts of clean code__

Understanding the clean code philosophy helps you produce better, more readable code with fewer failures.

__3. Build a portfolio site__

You should be proud of your work, and so share it with others and give future employers and clients the chance to hire you.

__4. Write a technical blog post__

Writing a blog post has several advantages. Learning new things is often easier if you try to explain what you’re learning to others. And giving back to the community is a great move.

__5. Get your first freelance gig__

Make 2020 the year for a career change and land your first contracting job. Have a look at web platforms that offer project opportunities, contact recruiters, go to community events and conferences, or see if your employer might want to hire you as a freelancer.

__6. Learn the JavaScript fundamentals__

JavaScript runs the web. And JavaScript will probably still be around while frameworks like React and Vue come and go. So invest in learning the JavaScript fundamentals.

__7. Learn one big JavaScript framework__

Modern web applications are often times powered by frameworks like Vue, React, or Angular. Companies like Facebook, Google, and Airbnb maintain and use them. So, as a front end developer, you should at least know one of them. But in the end, it’s just JavaScript.

__8. Try to move to a senior position__

Learn what it takes to become a senior developer. Besides experience, it’s very important to have soft skills like empathy and great communication skills.

__9. Mentor junior developers__

The most important deliverable of a senior developer is more senior developers. So try to help educate others without being bossy.

__10. Create a tutorial for others__

If you’ve learned a new programming language, feature, or technology, share your knowledge with others.

__11. Try out VSCode and its extensions__

If you haven’t used VSCode as your primary IDE, you should definitely try it out. It will make you a much more productive developer, and it has a lot of great extensions, like code formatting and styling or auto-completion.

__12. Leave a toxic workplace__

If you’re working in a toxic place or have a toxic boss, look out for other job opportunities. People won’t generally change, and your talent is too good to be wasted. Look for someone who can appreciate you and your skills.

__13. Contribute to open-source projects__

Contributing to open source is probably something every developer has thought about. You can engage and help the community, practice programming in real environments, and add it to your portfolio. A lot of OSS projects are welcoming new users that can add to their repositories.

__14. Learn a fundamentally different programming language__

To broaden your horizons and get out of your comfort zone, it might be a good idea to learn a completely different programming language. For example, if you normally use Java, try JavaScript, Rust, or Golang. Try something you’ve never worked with before.

__15. Deploy a serverless function__

Serverless functions are small programmatic functions with a single purpose that are hosted on a managed infrastructure. You can use AWS Lambda, for example, to host them. Many projects make use of them, and so it’s worth giving it a shot.

__16. Learn GraphQL concepts__

RESTful APIs have been the de facto standard for web development in past years. But with Facebook’s GraphQL on the rise, you should definitely try to learn the concepts behind it.

__17. Build a JAMstack application__

JavaScript, APIs, and Markup — applications consisting of these technologies make up the JAMstack. The JAMstack is powerful, lightweight, and independent of dedicated backends. A good fit for corporate websites or your portfolio site, for example.

__18. Have a look at OWASP Top 10__

The Open Web Application Security Projects offers recommendations and best practices for developing secure applications.

__19. Do more pair programming__

Pair programming is one of the best ways to share knowledge between programmers. You can learn from more experienced developers, or you could help out more junior developers. Either way, it’s a good thing and helps you to stay focused.

__20. Opt-in for code reviews__

Code reviews are mandatory in many projects and demanded by many corporations before code gets merged. You should participate in such reviews quite often. If you’re a beginner, you can learn by reviewing other developers’ code and ask them questions about it. If you’re more experienced it helps to reduce errors in the codebase.

__21. Focus on problem-solving__

One thing that makes a good (senior) developer is the ability to focus on solutions instead of problems. Always try to find ways to deal with challenges.

__22. Learn how to debug__

Programming code will never be perfect. There will be bugs and errors, that’s for sure. But in order to find and fix them, you need to learn how to debug your code.

__23. Don’t sell yourself short__

One thing I always need to remind myself is that I’m worth whatever money I charge a client or ask for from an employer. All the skills you’ve acquired, all the hours you put into programming, and your valuable personality should give you the confidence to negotiate in your favor.

__24. Learn from your failures__

Everyone makes mistakes. Even the most successful developers make a lot of mistakes. But what’s important is that you learn from these mistakes in order to grow — both in your skills as a developer and in your personal life.

__25. Always test your code__

Writing tests for your code, whether unit tests or integrations tests, seems to cause extra work, and you might think that the code you write is perfect and without errors anyway. That’s a mistake. Almost all corporations and open source projects expect you to test your code. And you should even do it in your personal projects to get a hang on it.

__26. Learn design patterns__

Design patterns are building blocks for architecting software applications. You won’t necessarily need them in every project, but it’s good to know some of the major ones.

__27. Don’t hesitate to ask for help__

There’s nothing bad about asking for help. However, it’s always a good practice to try something on your own before asking someone to help you. But in general, if you’re stuck, reach out to someone who can help you.

__28. Attend a technical conference__

Attending conferences is a great way to learn about new technologies and to engage with the community. Quite often, employers offer their staff discounts or pay the fees for them if they bring back knowledge and share it with their coworkers.

__29. Speak at a technical conference__

If you have the chance, you should speak about a topic you’re interested in at a conference. Even if you’re an introverted person, it will help you build confidence.

__30. Try to stay relevant__

This is easier said than done, but in order to keep track of the rapidly changing world of technology, you need to constantly learn and improve your skills. Read blog posts, attend conferences, watch videos, subscribe to newsletters, read books, attend (offline) courses. There are countless possibilities.

__31. Be open-minded__

Nothing is for granted. No technology, no framework, no library. You have to constantly adapt to succeed in this industry. And being open-minded doesn’t only count towards tech — in the end, it’s the humans that matter.

__32. Join a community__

You don't have to be a one-person-show. Joining a community of like-minded people, other developers, writers, or whatever you have interests in can really help you to improve professionally, discover new opportunities, and even make new friends!

__33. Become a specialist__

Many people, including me, are generalists meaning they know many things good and that's perfectly fine. However, in some positions in tech, it is necessary to know a few things very, very well and experts for those things are in high demand and paid equally well. 

__34. Ship something__

A lot of people are afraid to ship things to the public. Products, Tools, Articles - doesn't matter. The key takeaway here is: Just ship it! Either it works right from the start or you learn something new by adjusting it!

__35. Practice regularly__

You don't have to be some sort of natural talent to work as a programmer. Almost everything can be learned and the best way is to program. So write code regularly, daily, and you will become better - automatically.

__36. Start a personal project__

Many people believe a "real programmer" does nothing but code and has at least 3 personal projects at a time. That's, of course, not true! But a personal project can be a good thing to explore new technologies, try out new things, build & sell a product or just to have some fun. Try it!

__37. Finish a personal project__

Starting a personal project is easy. But making it to the end by shipping it to the public is not. The personal-projects-graveyard is pretty crowded with lots of abandoned projects. You should try to finish something - the feeling is great!

__38. Take a new course__

When was the last time you learned something new, be it for work or for yourself? Maybe it's time to get out of your comfort zone and take a new course about a topic of your interest. Doesn't have to be about coding. Might as well be to improve your social skills or even something like cooking!

__39. Read more books__

The internet brought us many new opportunities to learn - blogs, podcasts, video courses...but for me, there is nothing better than a good, old, paperback book. So if you want to try something old that worked for generations - read a book!

__40. Support other people__

*Giving is better than receiving* - By helping other people you can really improve as a human. And often it pays off in the long-run. New job opportunities or friendships - and it's a great feeling to help others!

__41. Learn to analyze problems__

When you work as a developer it's often necessary to analyze problems extensively before tackling them. This is a skill that you can and should learn. There are great courses available that specifically teach you how to analyze problems.

__42. Refactor a codebase__

Codebases are like attics. They look clean when you build the house but over time they become a crowded place with many things you actually don't need anymore. Same with code. So it's a wise decision to go through your code from time to time to see what can be refactored or even abandoned.

__43. Meet new people__

A lot of developers that I would describe themselves as being introverts. So they often tell me it is hard for them to meet new people. That's understandable, of course. But believe me, socializing is hard for everyone so fear not to talk to others in person or over the web. Online meetups are a great place to overcome fear!

__44. Enjoy your life__

Maybe this is obvious to you but maybe not. Enjoy what you do, in life and in work. If you don't like what you are doing you will never give 100% to it. And even if that means to change jobs or careers. Do what you really like!

__45. Don't listen to others too much__

A piece of strange advice because I am actually telling you something and you are obviously reading it. But it's true. There are so many people with even more opinions out there telling you what to do. But in the end, it is your life, your choices, so don't follow blindly but be skeptical and do your own research!

__46. Take some time off of social media__

Social Media really is a double-edged sword. You can meet great people, read fantastic things and waste lots of time. Because of the reward systems with their likes and reactions, things can become addictive real quick. So take some time off of social media regularly and regain some energy!

__47. Create a social media account__

While I stated that social media can be dangerous at times it also is a good opportunity to get to know brilliant people, learn new things, join communities, or do some self-marketing. I suggest you try it out and decided for yourself if you like it or not.

__48. Create a LinkedIn Account__

LinkedIn has become the de-facto standard for professional relationships. If you are serious about your career and want to receive new opportunities on a regular basis a well-made and up-to-date profile there is a must!

__49. Take care of your social accounts__

Having abandoned social media accounts, especially a LinkedIn account that isn't up-to-date is worse than not having one in my opinion. So take some time to care for those profiles!

__50. Build a solid foundation__

Many beginners jump straight into frameworks, they often even switch between them. I personally don't find it problematic to start with a framework if it keeps your interest up and fits your learning style. However, at some point in your career, it becomes vital to have a solid foundation because frameworks come and go but the fundamentals are likely to stay - so it helps you adapt to new situations and challenges.

__51. Take advantage of free resources__

There are many great resources for learning any topic about programming and web development available but sometimes it's hard to separate the good from the bad ones. Ask friends, co-workers, or on social media for recommendations. Look at the number of views on youtube, for example. But don't follow blindly, always reflect what you read or watch!

__52. Find your niche__

Having a broad knowledge of different topics is per se a good thing because it opens many doors and leads to lots of opportunities. However, it can be very satisfying to become really good in a niche of your interest. It makes it easier to talk about it, to write about it and the coding itself is super fun!

__53. Learn how you learn best__

This is something I had to discover for myself as well. There are a lot of people suggesting that you learn specific things in a specific order or via a specific medium. But the truths is that nobody can really tell you how to learn things. Rather you should try different strategies and techniques and find out yourself how you learn best!

__54. Learn to appreciate failures__

When you work with code, especially when it comes to shipping things to production or when you write tutorials, record courses, provide help to others - there is always the possibility of errors, mistakes, and failures. Don't let this discourage you but rather take those as chances to become better, learn something new, and strengthen your self-confidence!

__55. Learn to celebrate success__

Easier said than done and often neglected. If you achieved something like a new certification, a promotion, a new job, a new blog post that receives a lot of views, or your first product that goes live - celebrate those wins and let others know about it.

__56. Just start coding__

If you are new to programming chances are you are overwhelmed by the massive amount of learning materials and read post after post, watch course after course. But with coding the best approach to learn it is actually to just start coding and improve from there. 

__57. Contribute to Stackoverflow__

Stackoverflow is one of the largest developer communities and you can find solutions for almost any programming problem there. But instead of just reading you could try raising questions or answering questions from others. Remember, giving is better than receiving!

__58. Find great tools__

*A craftsman is only as good as his tools*. You don't need much to code - your laptop and a basic text editor are sufficient. But there are great tools out there that help you like IDEs (Integrated Development Environment), CLIs (Comand Line Interfaces, note keeping tools, Pomodoro timers, image hosting, and much more.

__59. Customize your IDE__

If you use an IDE like Microsoft's VSCode you can and should really make it your IDE by leveraging the excellent marketplace extensions and massive customization features. It starts with colors and themes and can go as deep as shortcuts and snippets.

__60. Develop a new product__

Products are something that many developers ultimately want to create to generate additional income, gain freedom, or see their ideas come to life. Truth be told here: Chances are that your first product won't sell for millions of dollars but don't let that discourage you. If the first product isn't successful maybe the second or third is. And what success really means is defined by you and not by others.

__61. Create your own tools__

Even if there are many great tools on the market I believe there is always room for more tools that either do a specific thing better than other tools or solve a new problem. So if you have an idea to improve something or encounter a problem that no existing tool can solve - go for it.

__62. Write a book__

Writing a book seems like a huge task with lots of hurdles. While it is definitely challenging, it also is a great experience and it can generate a substantial amount of revenue. It doesn't have to be a paperback book though, an ebook is just fine. You can start with as little as 10-15 pages and give it away for free to test the waters and learn how to write.

__63. Create a library__

Have you ever tried creating your own library, a JavaScript-based one for example? So many people have done it before and the solutions are often just tiny little helpers tackling a tiny little problem. So I encourage you to try making your own library if you encounter a problem that you can solve and think that others will benefit from your solution as well.

__64. Learn to listen to others__

Many people seem to like the sound of their own voice. However, when working in a team or with clients, it's essential to also listen to others actively. By actively I mean to ask questions that help the discussion. Learn not to interrupt others and to be respectful during meetings.

__65. Communicate clearly__

Communication skills are highly important these days, sometimes more important than pure coding skills. Failure and success of a product or company often directly relate to the quality of internal and external communication. So take some extra time to communicate in a clear and understandable way.

__66. Share unfinished work__
You don't have to be a perfectionist. Share your work early and when it's not finished to receive valuable feedback from others. It's better to adjust things as soon as possible because it becomes harder and more expensive later.

__67. Answer Quora questions__

Quora is a platform where people raise questions about almost everything that exists in life. By answering peoples' questions there you can market yourself as someone with profound knowledge in specific areas which in turn can lead to new career opportunities.

__68. Become a domain expert__

If you are interested in a specific topic like cloud computing, security, or machine learning it can be a good move to really focus on that specific domain and become an expert in it. Higher salaries, "fame" and a good feeling can be the rewards.

__69. Get a promotion__

Okay, being promoted is something you can't really force because there is almost always someone that has to promote you. But while there are exceptions most people don't get promoted if they don't ask for it. So if you think you deserve to be promoted you should go for it and don't wait until someone does this for you.

__70. Take some time off__

Coding is a fulfilling thing for me. If I'm "in the flow" hours are flying by like there is no tomorrow. Sometimes I code during work hours, continue in my free time and do it even on weekends. But this can quickly lead to burnout or stress so it's really healthy to take a few hours or days completely off of programming to recharge the batteries.

__71. Inspire others__

When you have built a new product/feature, learned a new skill, solved a difficult problem, or talked for the first time at a conference - share it with others to help them and inspire them to become better developers.

__72. Work with SQL-Databases__

Even if there are some good reasons to use No-SQL database solutions and in my opinion, those are often marketed as more "hip or modern" most of today's applications are probably using SQL databases. So learning how to work with them is a vital skill you shouldn't neglect,

__73. Work with No-SQL Databases__

If you haven't worked with a No-SQL database product or technique before you should give it a go. Solutions like MongoDB, Redis, or Couchbase are being used by many large organizations and follow a fundamentally different approach than SQL databases.

__74. Learn how to research__

Programming is problem-solving. In order to solve problems, it is vital to know how to research for solutions properly. Take notes, ask questions, and try to find the right documentation or solution documents.

__75. Learn about accessibility__

Accessibility, also known as A11y, is something that should be a standard in software development but sadly is not. There are a lot of people that have difficulties using web applications because those are not made for people with disabilities or impairments resulting in barriers. So every web developer should know about accessibility features and make the best use of them.

__76. Learn about kubernetes__

Kubernetes (K8s) is a hot topic in DevOps and Web Development. K8s is an open-source container orchestration system used for automated application management, scaling, and deployment. A lot of companies already use Kubernetes, so knowledge of it is precious.

__77. Write useful comments__

Commenting on other peoples' blog posts and code snippets can be really helpful for the authors. But please do it in a way that is neither insulting nor misleading. Try to be clear and precise, comments should always provide value. No value = no comment!

__78. Get a new certification__

Certificates are still a great way of showing your expertise and can lead to new career opportunities such as a new job, a promotion, or an increased salary. You can add them to your resume and LinkedIn profile. A lot of companies have an extra budget for their employees so you might even get one for free. 

__79. Practice authorization & authentication__

Dealing with users and their data is a challenging thing to do. If companies mess it up and personal data has been exposed the trust in that company can plummet real fast. So it's vital these days for every developer to know how to properly deal with authorization and authentication (no, that's not the same!).

__80. Take care of API security__

APIs are everywhere. But it's important that they are properly secured and only authorized services are able to access them.

__81. Write good emails__

Ha, you are a coder, why should I care about emails you might think. Well, we all receive dozens of emails each day. And one of the many reasons we programmers don't like receiving emails is how they are written. So lead by example and try to write emails in a way the reader wants to read it.

__82. Don't be a gatekeeper__

There are enough problems in this world already so you really shouldn't discriminate or exclude others from knowledge, jobs, or communities. Be kind and humble and it will pay off!

__83. Follow great people__

Honestly, how many people do you follow that you don't really know or have no clue about what they actually do? Try to reduce the people you follow to the ones that really provide value for you in terms of expertise or other opportunities.

__84. Take new risks__

Most of us live in our comfort zones and hardly get out of it. But without taking risks there are few chances of rewards. Don't have to be dangerous things but things like applying for a new job, writing a book, or creating a product.

__85. Learn about machine learning__

Machine Learning is one of the hottest disciplines right now. The salaries are above average, the demand for skilled developers is very high. If you are looking for a new challenge or want to improve your skills - machine learning is a great opportunity right now!

__86. Stay humble__

Don't take things for granted or make fun of others that are just at the beginning of their careers. We all started somewhere and wished we had cool people to back us up back then!

__87. Track your progress__

*If you can't measure it, you cannot improve it.* If you think you don't make enough progress or progress at all it might be time to start tracking your progress. Commits, line of codes, courses, books, certifications,...but track it.

__88. Learn how to utilize documentation__

Many questions and problems can be solved before asking for help by taking a look at the right documentation. Even if you are starting out, for example with a new framework, you can learn a lot from the documentation. Often times you don't even need to take a course, the docs are sufficient.

__89. Chose quality over speed__

It's a fast-paced world and industry. But that doesn't mean to rush through everything. Quality matters so take your time on the things you make. For example, don't dispense writing tests for your code because you think you don't have time for it!.

__90. Participate in a job interview__

Even if you don't need a job right now it can be a good strategy to opt-in for an interview from time to time to stay in practice and see what your market value is.

__91. Help others to prepare for an interview__

A lot of people struggle with job interviews and are very grateful if someone helps them prepare for it and acts as a sparing partner.

__92. Invest in yourself__

The best way to spend your money and time is by investing it in yourself and your career. Paid courses or certifications are a great way to invest in yourself and usually pay off in the long run.

__93. Invest in your tools__

You don't need that fancy new MacBook or iPhone every year. But you spend a lot of time in front of a computer so don't always buy the cheapest things. A good monitor, keyboard, mouse is a must. A chair that supports your health is very important. And tools that help you with programming and development can also provide great value.

__94. Try to work from home__

Many of us have been forced to work from home during the Covid-19 pandemic. And a lot of people struggle with it while others love it. But it can be really cool for you and your family if you do it in a proper way. Many companies know what it means for their employees to work from home so communicate honestly about your needs and fears.

__95. Get a remote job__

As a software developer, you can usually work from anywhere in the world. This gives you countless opportunities to work with the greatest companies, the coolest products, and the smartest people. 

__96. Find a job with a purpose__

Many people go to work because they need the money. That'S totally fine. They exchange their time for a paycheck, nothing wrong with that. But if you are like me thinking there is more to work than 9 to 5 you should try to find a job with a purpose. Can be something for the community, for the society, or in the open-source area, for example.

__97. Join a startup__

Whether you are an industry veteran or an absolute newcomer - working in a startup environment can be challenging and rewarding. Lots of things to do, responsibilities right from the start, no clear career paths, and often a vision that stands above everything. 

__98. Apply for a new job__

SOme they that you have to change jobs constantly in the tech industry to increase your salary and stay relevant. I don't think that this is true for every case but sometimes it makes sense to go for a new job. Toxic bosses or colleagues, better salary, new technologies or learning opportunities, or the perspective of working remotely. If you have a reason to apply for a new job you should do it.

__99. Join a coding bootcamp__

Coding Bootcamps have emerged over the past years and can really help you jumpstart your career as a software developer, especially if you are coming from a non-technical background. Many companies accept Bootcamp graduates for junior positions.

__100. Explore Cloud Technologies__

*The cloud is just someone else's computer.* If you see it this way or not, cloud technologies are everywhere and many companies hire specifically developers that have experience with AWS, Azure, or GCP. So if you want to take the next step in your career or are trying to stay relevant for the future, learn about cloud computing & cloud technologies!

__101. Never give up__

Everyone struggles sometimes — some more, some less. It won’t always be easy. But you’re not alone, and we all started somewhere. You can do it!

---

And that’s it. The longest post I've ever written. Not everything will be relevant for you or apply to your current situation but I hope you can get something out of this list. Let's help each other as a community!

I recently started a new blog [The Smart Coder](https://thesmartcoder.dev) where I create free content for the community. This article is from there, you should check it out :)

**If you like what I write and want to support me and my work, please follow me on [Twitter](https://twitter.com/simonholdorf) to learn more about programming, making, writing & careers🥰**