I see in the several companies the software engineer is a treated same as factory job. It forced them to become a code monkey. That means they got the task and do whatever the task company gives. Roles that treat software engineers like that are not good for engineering careers. But if the company treats you as a creative worker but you’ve still become code monkey instead, you need to stop it and change the behavior. Let me show you how to avoid become a code monkey and back to the right path as proper software engineer.
As a software engineer, you are not there to take requirements blindly. In there, you are to partner with your business, product partners and the stakeholders. That means you have to earn an equal seat at the table on product decisions. At least part of the decision should eventually belong to you. You need to treat it with great responsibility.
After you know that in the development process, you may decide, or at least can give a suggestion to business and product partners. You will see things that non-engineers don’t. For example, the product team makes features public group chats. The real example of what the impossible is to show all chat messages from all users in the chat box in real time, but we can make it show some random sampling message per second instead of all messages. Please comment if you have another example.
The last advice is to add value. All the code you wrote will end up being legacy and discarded if it does not add value directly or indirectly to the business. It doesn’t matter how pretty your code or how much you love it if it doesn’t add value.
In short, to prevent you’ve become a code monkey
- Never take requirements blindly.
- Find a clever way to solve problem
- Add value first