As a software developer, you’re regularly faced with many tricky challenges. As a expert, you need to be able to make the right choices. The technology and programming challenges you face is your target.
There are correct ways to solve technical issues. It’s easy to prove one answer over another. But the ethical challenges can be much more difficult. There isn’t always a clear right answer.
One of the biggest ethical challenges software developers face is that of going forward with decisions they know are correct and in the best interest of their client even if making those decisions could jeopardize their own well-being or stability.
When to say no?
If you say “No,” to your own employers it might even signify getting fired, but sometimes that’s the price to pay if you want to call yourself an expert. It’s painful, but always choosing to do the thing you know is right over the course of your career is much more likely to pay off than the alternative – plus you can sleep at night.
Sometimes experts have to make tough decisions about the priorities of what they work on. Unprofessional software developers will often waste time by unimportant things and they can’t decide what to work on next and ask someone what else to do. An expert assesses the work that has to be done and gets to prioritizes it.
What if you can’t say NO?
My advice is to go forward because it’s easy to get trapped into circumstances where you need a salaried work, but when you get trapped in those situations you limit your own decisions and allow others to apply vast authority over you.
If you’re in this kind of a state, get out of it, as fast as possible. Save some money so that you don’t have to worry so much about losing your work. You might even think looking for another work where your opinion is more highly appreciated. But remember; try to put yourself in positions if you’re in the upper hand.