The Role of an Engineer
Over my relatively short career, I’ve noticed a gradual shift in how I think about my roles and responsibilities at work. When I first started out, I felt that engineers should be valued for their technical skill-set alone. I believed that the role of an engineer was to take a set of requirements, usually from someone with product expertise, and convert it into functional code.?
And this is mainly true.
Engineers are supposed to be technical experts. They need to know what challenges to expect when scaling products from thousands to millions of users. They need to know how to build the product in a way that is secure and reliable. That is our bread and butter. Depending on what we’re working with, we need expertise in various fields, like mobile, data, web, hardware, etc.
On top of that, engineers, by nature, love to tinker with stuff. We love to get our hands dirty and just build something. I enjoy my work largely because I like to solve complicated technical problems — a trait I’m sure I share with other engineers.?
I’ve always tended to focus more on how we build something than why. For example, when given a choice between building a simple solution to a problem and building a complex one, I would almost always opt for the latter; for the simple reason that I enjoy challenging myself. I feel more satisfied with my work when I know I didn’t take any “shortcuts.”?
However, I’m starting to appreciate that engineering does not exist in a vacuum.?
We don’t write software or create products to make ourselves feel better. We do it to meet some goal for our customers or the business. Ultimately, every feature we build ties back to either a customer need or a business requirement. In other words, engineering exists to deliver value to the business and the customer.
领英推荐
Even though this sounds a bit trivial, this perspective has changed how I view my role as an engineer. I’m learning to base my decisions on business and customer value instead of focusing entirely on the technology involved. Technology is an excellent tool that we can leverage to improve customer experience. When used properly, good technology has the potential to make businesses tremendously more efficient. But technology itself is not the end goal.
Your customers won’t care about a feature’s technical complexity or about the obstacles you had to overcome to make it a reality. All they care about is having something reliable, secure and cheap. The additional cost you incur from the complexity is irrelevant if nobody is willing to pay for it.
This makes it all the more important to prioritize your decisions.?
The answer might very well be yes, but these are important considerations to keep in mind. Remember that engineering effort is not an infinite resource. Any time you spend solving an unnecessary problem could have been spent making your business more efficient, or improving the lives of your customers. And being able to think about your tasks in the context of the broader business is just as important as having a strong technical skillset.
Amazon is a famously customer-obsessed company. Every decision we make starts with the customer in mind. We identify problems that could have the biggest impact on our customer's experience and work backward toward a solution, inventing new technologies along the way as needed. This mindset is core to the company culture and has been a major influence on me. It is everybody's job to think about the customer - and engineers are no exception.
Software Development Manager at Amazon
3 年This is brilliant, Sanchit! I’ll be sharing this with my team.