Photo by Evgeny Lazarenko on Unsplash
After a few weeks on the lockdown, I finally managed to get a little bit of a routine going.
Which feels nice, but I'm really looking forward to being able to go to a coffee house or grab a pint in the sun with some friends.
We'll get through this. Remember that it's okay if you're still not yourself. Be patient and don't compare yourself to others.
Last month I read some great articles, so I hope you enjoy it.
We need to throw away this idea that you can get the measure of a person just by subjecting them to a faux-IQ test. We need to fully internalize that being a great software developer is holistic and draws on abilities ranging from, yes, technical skill, but also empathy, experience, taste, grit, perseverance, and independence. Being a great software developer is multi-disciplinary and we need to actively and vigorously reject the notion that just being good at "cutting code" and inverting a binary tree is the end of the story and is therefore the only axis on which to assess people who work in teams and build products for other human beings.
We owe it to each other to do better. Much, much better.
- Ownership will force you to learn more
- Ownership will make you a better team player
- Ownership will enhance your debugging and engineering skills
- Ownership will make you take more responsibilities
- Don’t underestimate the importance of strong product leadership
- Great products are more than great code
- We all want the same thing
It boils down to this. We are all working towards the same thing: building a product to delight our customers and achieve our business goals.
- Make it your own
- Give yourself constraints
- Eliminate the time constraint
- The project needs to evolve over time
- Start it yourself, eventually find help
So now when I get a project, I don't think of what the original developers did that resulted in this design/product, I think of what I can do to accomplish something similar and I go on from there.
To do this I have some basic steps I follow:
- I break down the project into smaller sections.
- Break down those smaller sections into even smaller units if possible.
- Use a pen and paper to sketch how I think those sections will be laid out on the page.
- Write down a minimum of 2 different ways I can implement the same layout.
- Then I design and code each section as planned until I get to the final product.
If all you want is to write code and be a subject matter expert (SME) on your system then you might not enjoy the role of a tech lead or principal.
In many organizations, moving into these roles require you to change from a do-er to an enabler. And your success is no longer judged on what you produce yourself, but how much more you enable others to achieve.
To succeed in these roles, you need to be more than a great technician. You need to be a strong communicator too. By that, I also include listening well, which is an often under-appreciated skill of a good communicator.
Most of all, you need to change your goal towards optimizing your impact on the organization, not just your personal output.
- Its about consistency
- Topic consistency is a thing too
- Draft your posts in advance
- List your ideas
- Publish on your platform
- Study not other bloggers but content creators too
- You learn how to take criticism
- Share everything, everywhere