Staying relevant in software development
Well... 2017 has seemed to have flown by and all I can think about is upgrading to a new PC for the new year. But anyway, that's not what this post is about today, I wanted to touch on something I have been thinking about lately. What challenges are in store for 2018? How they will affect our industry? How will I need to adapt to stay relevant?
The main challenge I see in our field is staying innovative. This will be, for sure, a major challenge in 2018. We have all seen these emerging fields and technologies that have taken over... Machine Learning, Artificial Intelligence, Augmented/Virtual Reality, Internet-of-Things, Blockchain, Quantum Computing etc. etc. But I think the best is yet to come, and these are only the beginning of what we will soon see.
How do I keep coming up with fresh ideas? Iterate, iterate, iterate. Keep refining and brainstorming ideas, and don't just pick the first thing that comes to mind.
Life imitates art and art imitate life. But if your life is just work, then your art imitates work. And that ain't' fresh. So a challenge I can see in 2018 is indeed, having a life. What does this mean? Picking up a hobby, going to the gym, learning a new language, asking out that girl you've been thinking about. Literally anything but work.
This will be your secret weapon to staying on top and ready when the war is on your doorstep, and you have to burn the midnight oil to get your project finished by the deadline. It will also keep your perspective fresh by being exposed to areas outside of Software Development. Variety is the spice of life.
Some of you by now might be looking to head into management or furthering your career outside of Software Development. Guess what? You will become rusty on your technical abilities if you stop exercising them. If you still want to keep your code game strong, and be able code like a wizard and still battle on the frontline of management, then you will have to make time to keep those skills alive.
A good rule of thumb is to solve 1 coding problem per day - sites like Topcoder, Hackerrank or Project Euler can help you source the problems. These sites will hone your technical ability and have you solving problems you would'nt otherwise come across. These are great for anyone of any skill level, n00bs up to l33t coders.
Last but not least, don't turn your back on the team. Despite what you think, your teammates have your back when the inferno starts to blaze. Be a team player, and take the time to help them out by offering a helping hand, or by simply extending a how are you doing?. Be aware if your teammates are suffering and talk them through the bullshit that their facing.
In my opinion, Software is a team-sport. There are companies that treat it that way, and there are companies that don't. Play to win. Building products is the end goal right? So why not work together and make the best damn app, webpage, model, ui, game, algorithm, service that you can do, together as a team.
Staying relevant in Software is damn challenging. But it is all about mindset. By keeping innovative, technical and team oriented it will set you on a good path for longevity in Software. We're excited to see what 2018 holds, and what new fields and technologies will emerge and what will sink into the abyss.
If I don't see you...
Merry Xmas and a Happy New Year!