Hacker News new | ask | show | jobs
by 29athrowaway 2474 days ago
> "Understand the business aspect of your work, and what makes money. Eventually, only that matters."

How about ethics? company reputation? legal compliance? corporate responsibility?

6 comments

Caring about ethics is too old fashioned for software "engineering," reputation is maintained by someone else, software developers tend to think the law happens to other people and HAHAHAHAHA.

...that's about it.

Engineers at a known european auto maker created a solution to defeat car emissions tests. As a result, there were cars on the streets that polluted hundreds of times more than a regular car.

Delivery and ridesharing apps have algorithms that are almost indifferent from tip skimming. Many people working on those platforms live in financial hardship.

In an east asian country, people live under constant surveillance: physical (cameras, face detection), financial, and online activity. If you criticize the government you lose access to everything: payments, transport, credit, job, etc.

If you were paid a lot of money, would you implement those "solutions"?

That is the importance of ethics.

You are trying to convince me that ethics are important. I already believe that. You perhaps might try to convince me that companies care about that, but you started off with a bunch of counter examples.
In addition to the ethical aspects of the product, I would add, that I always ask myself, "if I was laid off today, can I use my current job to get another job."

I worked at a company where the the work I was assigned was undermining my career to the point that if I didn't do something on the side, I wouldn't be able to pass an interview.

So while the business aspect is important, it is not the only thing that matters; it never is.

OP has shared the github repo where these pointers are maintained and has encouraged pull requests to improve on the list.
Definitely. Thanks for pointing out the gaps. I will revisit this list in some time, and make changes based on feedback. If you can, feel free to contribute through the shared github link.
None of that matters if employees aren't getting paid.
Being a prerequisite is not the same as being the only thing that matters. Also, the company making money does not mean the employees will get paid.
Your post comes off as if the author is purposely avoiding these topics. No doubt they’re important, but while many software people will look at a company’s reputation or take ethics for granted (in the sense that of course it’s important), many software people, especially juniors, don’t stop to think about the business value of spending X on Y. Everything has a cost - for example, spending the extra time optimizing your code has a cost. Value is what you want to produce at the end of the day, not a grand architecture or extremely optimized code. Those may or may not be a means to an end. That’s not to say you should ignore ethical or legal consequences. I don’t think people generally want to break the law.
People generally don't want the company to lose money either. Many ethical and even law violations happen for the same reason you gave: they don’t stop to think about it. Ethical and legal consequences are not always obvious.
You are conflating software engineering good practices with ethics. They slightly overlap but are not the same.

Balancing strategy and tactics is something you do as you become senior. Pumping tech debt is a tactic, good practices are a strategy.