So you’ve landed yourself a great gig as a developer, and have a specific thing you’re asked to work on. Fantastic. However, don’t let that stop you from learning and exploring.
In fact, working on one project for so long can cause you to lose skills in relation to those in the industry still learning. If you’re not moving forward, you’re moving backwards. So here’s some tips to keep fresh and become a better developer.
Practice Makes Perfect
Codewars is a great place to practice your coding skills, and learn new ones. Search from a range of challenges, called “Kata” and try and solve them using your language of choice. Each Kata has a skill level and completion of it gives you points, which you can show off or use to compete against friends.
Once you’ve completed (or given up) with a challenge, you can then view other people’s solutions, to learn techniques that you may not have known or thought about.
Another useful thing you can do is create repositories and libraries to help others. For example, I’ve created a repository of easy-to-read code samples for connecting to various AWS services – https://github.com/wazcov/AWS-Java-Samples – You can contribute to this or create repos for your own ideas.
This is, in my opinion, the most important way to become a better developer. You may write some code that achieves what you need, but if you open it up to code reviews you can see other ways that people could achieve the same thing; either in fewer lines, better performance or using fewer external dependencies.
Furthermore, if you opt to review others code, you can again see how others may have done something and can question or discuss methodologies. Don’t be afraid to question a bit of code you don’t understand, there’s a chance it was written wrong or it could be an obscure API.
We Have 2 Eyes, 2 Ears & 1 Mouth
There’s a good reason we are blessed with more ways of listening and reading from others than we have of communicating ourselves.
Reading blogs and articles on tech and coding can be really useful to keep on top of the latest changes in the world of coding. Some of my personal favourites include CodingHorror , Reddit’s r/Programming, Wired, and Medium’s Tech section.
Listening can be just as important. Walk up (yes sorry fellow introverts, human interaction necessary) to a fellow coder, tech lead, DevOps guru, UI designer or other person in your organisation and find out what they are working on. Even if they are working on something completely different (say an iOS dev talking to a database architect), it’s often so useful to find out what challenges people are facing and get to know more about the whole stack.
Security Is As Important As Ever
Security is so important, yet it’s one of the most overlooked areas in coding these days. Often people will just pull all sorts of libraries and dependencies into their project, with no idea what they do. Just recently there have been examples of crypto miners sneaking into npm libraries.
With the increase in data breaches, there are now more fines and punishments than ever before, so proving you know about security will land you in good stead with your employer.
Share Your Experiences
I started out wondering what I would talk about, thinking all blogs had to be about cool new features, however I realised that people are just as interested to see challenges and mistakes. Even the best of us make them, so lets help others learn from them. Consider setting up a blog like this one.
Starting a whole website with a blog may not be for everyone, so for an alternative for sharing fewer things, consider writing an article or two on Medium.
Maybe you have enough of typing during your day coding – more and more people are learning programming from videos, either free on YouTube or paying via sites like Udemy. Consider recording yourself for these sites, or if you have a face for radio, try your hand at Podcasting!
Keep learning, keep practicing, don’t be afraid to ask questions and put yourself forward. Talk to others, but listen more.
Do all that and you’re on the path to being a very successful developer