My Software Dev New Year’s Resolutions
Tis the season for trying to break bad habits and make some good ones
Working as a Software Developer it’s important to have a growth mindset. Nobody is ever perfect and the start of a new year is a good time to reflect on what you thing you’ve been doing well as well as identifying some changes you’d like to make. These are the ‘resolutions’ I’m taking forward into 2023.
Do more of the right kind of learning
I’m fortunate that my company allows us to take a day every other week to devote to ‘learning and innovation’. However, over the last year I haven’t been using this opportunity very effectively. Firstly I have been taking L&I time very irregularly; opting to catch up on ongoing work instead. I’m entitled to the time and using it is a great way to further my development so I’m going to try and stick to it in 2023.
Secondly, when I do take the time I haven’t always spent it on something particularly worthwhile. I’ve often found myself watching a random Coursera course that sounds interesting. This is better (and less likely to get me fired) than watching a day of Netflix but not the most effective way to improve as a dev. A better strategy would be to identify some areas I wanted to upskill that were related to my day to day work and identify some resources to use in upcoming L&I time. I also think it’s important to think of some action items; how will I know that I’ve learnt what I wanted to learn. This could be: delivering a talk to my colleagues, doing a small project, or writing and article on here like I’ve done before….
What’s the deal with monitoring and logging? | by Joe Rackham
What is a Software Architect?. What does a Software Architect do? | by Joe Rackham
Prioritize more
Throughput is a poor measure of how effective I’m being in my job but I’ve often found myself makings decisions about how I spend my days based on ticking off the maximum number of to-do list items. By ignoring the urgency of tasks I’m not working in the most productive way. This leads to tasks slipping and more deadline stress. In 2023 I want to be more thoughtful about how a work through the tasks on my plate.
Be more decisive
For nearly every problem in Computing there will be multiple solutions, each with their own known and unknown downsides; but one needs to be chosen. When I’ve been working on larger tasks I’ve found myself paralyzed by implementation decision or I’ve flipped between different options multiple times. It’s good to consider decisions carefully and weigh pros and cons but at a certain point you need to commit (no pun intended). In code decisions aren’t set in stone so if I do get it ‘wrong’ it’s not the end of the world.
When making decisions do touch a certain number of files or have significant architectural impact I have written up a code-plan which I’ve shared round for comment. This contains multiple viable options for the implementation with some identified pros, cons and risks with space to add more. My problem here has been around calling time, getting everyone to finish commenting and agree on a final implementation. This has been especially problematic as our team is split across multiple time zones so there is a limited window each day to communicate with everyone. In 2023 I intend to be a bit more ruthless with how long discussion around code-plans will last.
Become a notebook person
I’ve observed lots of my colleagues with nicely organized notebooks/journals/planners with notes and such in. I must admit that at the start of the year I thought this was a bit overkill but now I’ve got to admit that I think my combination of iOS nots and paper scraps isn’t gonna cut it. Maybe it’s because now I’m responsible for looking after more meetings/deliverables or maybe I’ve just seen the error of my ways . Fortunately I got given a nice notebook for Christmas so if you cant beat em’….
Happy New Year!
By identifying these points now I can be conscious of them as I return to work this month. If you feel like it, have go yourself and pick out some areas you want to improve on this year.