In my personal experience I have gotten much more praise from Big Corp company when the work I did was more visible to management. The best work I've ever done was completely ignored because it was more technical and difficult for management to understand what the work was about.
And it wasn't just about explaining the work, it just wasn't that interesting to people who aren't technical.
It was after getting an award for doing some extremely easy work, that I realized that it's much more important that you communicate what you do, than actually doing useful work. And this sucks real bad, because if you do good work, it means you have to spend a bunch of time outside of that work just explaining it and acting like it's a big deal, and you can easily beat the system by overrepresenting easy work, because you have a lot more time to explain what you did.
Just my experience with my Big Corp, it may not be quite like that everywhere.
We had a saying at one of my former employers, "You don't get a medal for preventing a fire". We worked so hard to prevent problems before they happened, but a lot of managers just thought of us as a pain in the neck. The only time anyone got wider recognition was for fixing problems after they had some serious impact. A lot of the time those problems would have been easily preventable. It really seemed like the teams that were constantly having major issues in production were constantly being hailed as heroes by management.
I also work for Big Corp and you hit the nail on the head. I saw big career growth this past year after I started working on a very visible project vs. when I was working on the small, technical stuff.
Now that I think about it, it was the same way at Midsize Corp too...
I think you may be failing to internalize the real lesson from your anecdote: how hard a task is has almost zero correlation with how valuable such task is for the business. If management didn't care about the very difficult work you did, and assuming management actually has a good understanding of the business, then that very difficult work just wasn't very valuable and maybe shouldnt've been done at all (because if you do a cost-benefit analysis, and something is really hard and the benefit small, it's an easy call to not do it).
Of course, there are things that have almost no immediate benefit to the business but must be done, like when you need to refactor a large code base to be able to implement future features in a way that doesn't destroy the software from within... but if you analyse such cases properly, their benefit is very big for the company in the long run and that's where communication plays an important role: management needs to understand why that refactor is so important, which I admit may be difficult in case of non-technical management (but then you have bigger problems than just properly judging the cost-benefit of some task).
I find it insulting when people of places of power say "life is not fair" to people complaining about things they're in a position to fix. This person is a CTO and they say devs are being abused by the system. You are the top of the system, fix it!
There's a whole game that is being played when it comes to intra-corporate relationships, and it pays to know how to play it at least a little bit. We've all seen people who have risen up the ladder with basically zero functional skill--who are maybe even damaging to the company. They know how to play it.
I was scrolling reels on Instagram. Then a nice and funny video came to my feed. In that reel, An spiritual coach(guru) called Sadhguru made a funny but thoughtful joke. Before talking further, I need to say… I am not a follower or fan of his, but I like some of his philosophies.
Let’s get back to the reel. Sadhguru and an Indian actor talking about God, depression, and why people get depressed. Sadhguru made a joke at the end of the reel that If anyone feels lonely, then they are bad company. 😆 (He meant if they were good company, they might not feel lonely in the first place. Rather, They would enjoy their “alone” time.)
Why am I telling you this? Because I realize one very important side of life. Life is never fair. But we make it harder and more complex by doing nothing about it. We somehow daydream and think that the fairness of life will give us what we really deserve.
And The last line was exactly told by Mr. Andrew(a fake name, I ask every guest-interviewee if I can reveal their identity in my article, but as it’s their decision, I respect their decision). He has been in the software development industry for over 20 years. He is now a CTO in his company for 5 years.
We talked about many things. But I will focus only on one very important topic that most good developers suffer in their lifetime at least once. That is… Good developers are often so humble that they don’t even know how to take credit for their work. They think their work will talk for themselves.
He talked brutally about “this” ignorance of good developers.
Why some great devs don’t get what they deserve
We discussed why some great developers don’t get their deserved recognition or financial benefits, and sometimes, some mediocre devs achieve more than the good ones.
He first replied with just one line…
Life is not fair.
Then he explained it with beautiful but brutal words…
“I don’t know why some people think life is fair… Life is not fair… It was never fair… If anything, Life is super unfair. I have seen many good developers do something super cool but couldn’t take the proper credit. It happens when you work in a bad team or a bad system.
I have seen that most of the good developers are good people. They are humble and introverted. They can do their job well, but some can’t take advantage of their good work.
Sometimes other devs from the team take the credit, and sometimes, the project manager, the supervisor developer, or the CTO doesn’t get to know who did the great work.
You might think you don’t need the recognition. But believe me, you do when the company considers who gets the promotion or who to fire.
Don’t worry too much about what your team members would think about you. Your team members might not like you for this, but they would respect you. And most importantly, your project manager will know you are a good, confident developer and better than others.”
Your work will not speak for you
There is another very important and related issue we talked about. When I asked him... doesn’t good work/code enough for the recognition we need?
He laughed and looked at me with so much pity that I didn’t know anything about this cruel world. He said… “Oh, dear!!” Your work will only make your teammates aware that you are a good coder.
But your project manager and your supervisor will forget the whole thing you are doing today. They would only remember did your team delivered the task properly or not. So, If you don’t communicate with your supervisor about your work regularly, they won’t remember it in the long run.
Your personal good work might be lost by the average or bad work of your team members. So, you will not get benefits at the time of layoff or promotion.
Your work will not speak for you at the time of your need. Your supervisor will. And They will remember only if you communicate well in the past regularly.
Then I told him that I had seen some exceptions. He then said… of course, 10–20% of developers might be so extra-talented that they are recognized even if they don’t claim their good works. But then he also said… They would have been a better career position if they spoke more about their work.
Communication is the key here. He said that communicating regularly and taking credit played the biggest role in his success. There were many better coders than him who wanted the same jobs he had landed. But he got ahead by maintaining clear and regular communication.
After discussing more topics like AI, Blockchain, and some stuff, he gave me a very funny and practical example. He told me developers earn better than most other professionals, and they are good people.
So, why do they still get fewer dates than other people? Because they can’t communicate!! 😄
He gave me one last tip. If I ever want to have a career in a management role, like CTO in the future, I must emphasize more on “taking credits” from the beginning of my career. He said being humble or modest is overrated and it would not do me any good for my career.
He is such a gentleman. I might write one more article about him on a very separate topic.
Thanks for reading! And, of course, share your opinion with us. If you want to support me, please join me!
Regarding the life is never fair thing, there is a beautiful sequence in Little Miss Sunshine that goes into this.
Spent twenty years writing a book almost no one reads. But ... he was also probably the greatest writer since Shakespeare. Anyway, he gets down to the end of his life, he looks back and he decides that all the years he suffered -- those were the best years of his life. Because
they made him who he was. They forced him to think and grow, and to feel very deeply. And the years he was happy? Total waste. Didn't learn anything.
This also happens in the Midsize Companies I have worked for, and also in the Small Companies where management was not technical or had no interest in technical topics.
I think key factors are:
Distance with managers. More is worse.
Interest/knowledge they have in technical endeavors. Less is worse.
Layers of management. More is worse.
That said, and whereas the advice might be effective, it also sucks to not be true to your own values. I would suggest to try to be communicative, but maybe don't become the asshole we all hate. And try to know more about the company on this regard while interviewing. Difficult, true, but include this in the list of factors when deciding which companies to join.