Photo: Jemal Countess / Getty Images
During my tenure at Yahoo (circa 2001–2007) I learned how to do a lot things, but just as crucially, how not to do certain things. Chief amongst the latter was how not to treat engineers.Yahoo, despite many well-intentioned efforts and notable exceptions, did not empower engineers. Even though we engineers created tons of value, it was the non-engineers who were often the gatekeepers. Eventually many of the best people noticed, got fed up and left.
After I left in 2007 to co-found Polyvore, one of my main goals in life became building an environment that highly values engineers and treats them as first class citizens. I continue to strongly believe that all sorts of good things follow from that.
I have since been thinking about why engineers are systematically undervalued compared to more traditional roles given the tremendous value they create. I have come up with three sociological reasons:
The Tangible vs. the Abstract. People are biased towards valuing tangible things they can see and touch. They can see and naturally appreciate an office building full of people working away at their desks. They can look at a new high-rise building and appreciate its scale and design.
They are inclined to assume that whoever is in charge of these things must be very valuable. In contrast, they can’t see or touch the software that performs the equivalent job of 50 people or the software that was used to architect the building. Software and other abstract intellectual works tend to be systematically undervalued because they are not as visible.
Lack of Measurement. In absence of good ways of measuring and valuing the true worth of things, people tend to fallback on their biases in assessing the worth of things. People tend to assume bigger team = more importance. For those of us who have ever worked in a “Big Co.” this is perhaps an intuitive explanation of the way some big company executives are focused on growing their fiefdoms through amassing bigger teams. More people = more clout & compensation.
Fairness vs. Conformity. People highly value fairness. Interestingly, this bias works against productivity outliers like Software Engineers who can be orders of magnitude more productive than others. An engineer may be able to automate a process so the task of 50 people can be done with 5. People have a hard time accepting that a single person should be compensated an order of magnitude differently than others because that level of disparity seems unfair.
There are also practical reasons. For example, a manager in charge of a large group is indispensable because without them things might quickly degenerate into chaos. Their indispensability creates negotiation leverage. In contrast, the best software engineers are constantly making themselves redundant and leaving behind systems that continue to operate and deliver value even after they have moved on. Only the most enlightened companies truly value these types of people.
If you are in a line of work that creates scalable but complex, abstract intellectual works, chances are you’re under-appreciated and therefore undervalued.
What to do?
Be awesome. Just because you are an engineer does not mean you are creating tons of value. Are you a multiplier for your colleagues? Are you working on projects that can scale?
Tell stories / Communicate. One great way to make complicated abstract subjects understandable and appreciable is to tell stories about them. Explain why the feature you are working on is important in terms other people can connect to. Once people understand the why, they can also appreciate the how and what.
Be metrics driven. Metrics that people can relate to are a great way to give substance to the abstract and communicate the value you are creating. Few people understand that say tweaking the image compression ratio shaved off 4.5KB from every image served. More people understand it when you explain those savings made the end-user page load time 15% faster. Better yet, you can explain how each 10ms shaved from the page load time means 10% more revenue. Everyone understands revenue.
Join the right kind of team. At the end of the day, you are probably better off joining enlightened companies that value people based on their actual contributions versus outdated social norms. A good filter is to look for companies founded / run by engineers and companies that are heavily metrics driven. Ask to see the metrics dashboards!
What do you think? Are there other reasons why engineers are undervalued? What advice do you have for selecting good environments to join?
Update: After publishing this post, I’ve heard from a ton of Yahoo’s telling me that it is now a much better place to be thanks to Marissa Mayer’s positive changes.
Marissa’s first order of business has been to make Yahoo a great place to work.
That is absolutely the right place to start and the reason why people are excited and hopeful about the company once again.