Engineers Survival Guide

Engineers Survival Guide

Merih Taze

📅 Finished on: 2024-08-18

💼 Work 💻 IT
⭐️⭐️

Play for the long game. Whatever happens, you will be working for decades. As long as you have joy and happiness in what you do, which is wonderful, do not sweat the daily annoyances. And do not run yourself ragged for a job; what matters is being happy.

Recommended by careercutler for work, a kind of guide drawn from experience across several FAANG companies.

Pretty generic, though useful if you are just starting out; I already knew most of the advice. The format is handy, 60 tips of a couple of pages each, full of personal experiences. The author is a dev at Microsoft, Snapchat, and other startups; you can tell he has been through a lot.

It focuses on soft skills that are familiar to me, like imposter syndrome, finding a mentor, communicating, understanding users, not burning yourself out because the ones who move ahead are the ones with passion and visibility, networking, and knowing things like frameworks and A/B testing.

Some notes I took:

  • Interview often. It keeps you sharp and open-minded and puts you in a stronger position with your employer
  • Visibility is everything: without it, nobody knows what you have done, even if it was technically hard
  • Have an odd number of people for consensus-based decisions
  • Do not get dragged into fights with difficult people. You will meet them. Instead, talk with your manager or someone more senior. It is not that hard to find time with them. Be careful not to complain too much or you risk being seen as the complainer
  • Pro tip for responding: people do not care that you reply fast; they care about feeling at ease. Ask “how urgent is this?” or “I will finish something and get back to you” instead of dropping everything. Otherwise they will keep coming back. Better yet, give them a link to the documentation. Better yet, post it publicly. And take notes when they talk; it makes them feel heard.
  • Understand your manager. They are a person too, and it is selfish to think they are there only for you. Make their life easier: communicate and align on everything
  • Act then Think. Build a prototype asap
  • Biggest regret: take risks and you will have regrets. This part intrigued me a lot
  • Perfectionism is your worst enemy: he spent months building an app and in the end someone had already built it. Build a quick prototype and you will learn fast
  • Find an area of ownership. It will make you unique. The author specifically suggests finding something nobody wants, which aligns with my view. You will be indispensable
  • Do not redesign a working system. This is senior advice, because there is a lot of history and logic you cannot catch. Be vigilant about it; weigh the pros and cons
  • Remember the importance of culture and the people around you
  • Ambiguity: what makes you senior is how you approach problems to limit ambiguity. That is what scares everyone. The more experience you have, the better you are at reducing it. Fight it. Write docs. Align.
  • Networking is obviously key to moving forward; it ties to visibility
  • Do not tell people the solution; give them context and let them think they chose it. It helps a lot in conflicts.
  • Dogfooding: TRY YOUR TOOL. Use it; put yourself in the user’s shoes
  • Know the terminology. Keep a dictionary of acronyms
  • Know the popular frameworks too (e.g., Redis, CDN, A/B testing and the like). You might not know how to use them, but you can consider them in decisions. Learn to use the debugger
  • Be happy and surround yourself with positive people
  • 🔑 Play for the long game. Whatever happens, you will be working for decades. As long as you have joy and happiness in what you do, which is wonderful, do not sweat the daily annoyances. And do not run yourself ragged for a job; what matters is being happy.

Recommended by careercutler for work, a kind of guide drawn from experience across several FAANG companies.

Pretty generic, though useful if you are just starting out; I already knew most of the advice. The format is handy, 60 tips of a couple of pages each, full of personal experiences. The author is a dev at Microsoft, Snapchat, and other startups; you can tell he has been through a lot.

It focuses on soft skills that are familiar to me, like imposter syndrome, finding a mentor, communicating, understanding users, not burning yourself out because the ones who move ahead are the ones with passion and visibility, networking, and knowing things like frameworks and A/B testing.

Some notes I took:

  • Interview often. It keeps you sharp and open-minded and puts you in a stronger position with your employer
  • Visibility is everything: without it, nobody knows what you have done, even if it was technically hard
  • Have an odd number of people for consensus-based decisions
  • Do not get dragged into fights with difficult people. You will meet them. Instead, talk with your manager or someone more senior. It is not that hard to find time with them. Be careful not to complain too much or you risk being seen as the complainer
  • Pro tip for responding: people do not care that you reply fast; they care about feeling at ease. Ask “how urgent is this?” or “I will finish something and get back to you” instead of dropping everything. Otherwise they will keep coming back. Better yet, give them a link to the documentation. Better yet, post it publicly. And take notes when they talk; it makes them feel heard.
  • Understand your manager. They are a person too, and it is selfish to think they are there only for you. Make their life easier: communicate and align on everything
  • Act then Think. Build a prototype asap
  • Biggest regret: take risks and you will have regrets. This part intrigued me a lot
  • Perfectionism is your worst enemy: he spent months building an app and in the end someone had already built it. Build a quick prototype and you will learn fast
  • Find an area of ownership. It will make you unique. The author specifically suggests finding something nobody wants, which aligns with my view. You will be indispensable
  • Do not redesign a working system. This is senior advice, because there is a lot of history and logic you cannot catch. Be vigilant about it; weigh the pros and cons
  • Remember the importance of culture and the people around you
  • Ambiguity: what makes you senior is how you approach problems to limit ambiguity. That is what scares everyone. The more experience you have, the better you are at reducing it. Fight it. Write docs. Align.
  • Networking is obviously key to moving forward; it ties to visibility
  • Do not tell people the solution; give them context and let them think they chose it. It helps a lot in conflicts.
  • Dogfooding: TRY YOUR TOOL. Use it; put yourself in the user’s shoes
  • Know the terminology. Keep a dictionary of acronyms
  • Know the popular frameworks too (e.g., Redis, CDN, A/B testing and the like). You might not know how to use them, but you can consider them in decisions. Learn to use the debugger
  • Be happy and surround yourself with positive people
  • 🔑 Play for the long game. Whatever happens, you will be working for decades. As long as you have joy and happiness in what you do, which is wonderful, do not sweat the daily annoyances. And do not run yourself ragged for a job; what matters is being happy.