From an Amazon tech lead: soft skills I’d tell my younger, jr software engineer self. 🧵 👇
1️⃣ Exude kindness.

The tech world is full of strong opinions. You may perceive people as mean. They’re not. They just want the best outcome.

Resist the temptation to become an unpleasant person. Radiate kindness while holding a high standard. You’ll go far.

👇
2️⃣ Ask stupid questions.

There are a million technologies. You’re not expected to know them all.

Example question: “I don’t understand what those words mean. Can you explain them, or point me to a resource which does?”

👇
3️⃣ Seek the relentless reviewer.

There’s always that one person on every team. Nobody’s work is good enough. They nitpick everything.

Find this person. Have them review your work as much as possible. The more constructive feedback you receive, the faster you'll learn.

👇
4️⃣ Put your ego away.

Your peers are intelligent individuals with unique backgrounds and industry experiences.

Listen empathically with an open mind. Leverage their insights to improve the quality of your work. Even when they’re wrong.

👇
5️⃣ Focus on correctness and intent.

Avoid sunk cost fallacy. It doesn’t matter if you spent 4 hours coding a solution. If you did it wrong, trash it.

Make sure there’s purpose, intent and clarity behind every line of code.

👇
6️⃣ Become a Professional.

With a capital P. Every task is an opportunity to produce beautiful, elegant code. Code is art, and you're the artist.

Learn programming principles. Become a software craftsperson and take pride in your work. Don’t just make it work; make it right.

👇
7️⃣ Leverage existing examples.

Search for existing internal or external solutions before starting a task. Read a few examples. Understand the code paradigms used.

Then look at your own team’s code. Introduce the new functionality in the right way.

👇
8️⃣ Throw yourself into the fire.

You will never be “ready” to work on big features, execute production deployments or go on call.

The best way to get ready for them is… to do them. This will expand your comfort zone and accelerate your growth.

👇
9️⃣ Take initiative.

Notice opportunities to improve your team’s operational excellence, processes and developer experience.

Refactor legacy code. Automate manual procedures. Improve runbook documentation. Mentor interns. Improve the CI/CD pipeline.

👇
🔟 Prioritize promotional work.

Some tasks will have a high impact on promotions. Some tasks will have a low impact. That’s OK - give it your best on every task.

But your day should always start with a high impact task.

Fight for yourself. Your company won't fight for you.

👇
Those 👆 are some soft skills I’d tell my younger self.

What soft skills would you recommend for software engineers?
You can follow @curtiseinsmann.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled:

By continuing to use the site, you are consenting to the use of cookies as explained in our Cookie Policy to improve your experience.