Practical / Tactical
Be on time to meetings or alert an hour ahead of time if you'll be late
Meetings need a goal and a runner to get that goal accomplished
Defend your time from distractions and use it effectively on moving product forward
Prefer Slack over email over in person interruptions over a set block of time
Plan and communicate WFH/remote working days at least the day before when possible
Working with each other
10 minute rule: don’t get stuck on anything for that long, someone else can help you solve it faster
Seek out criticism on your designs and code
What could I be missing?
Where will this not work?
Be assertive AND flexible. Strong opinions, weakly held
Pairing is healthy for our minds and products and we should try to do it for an hour a day
Being a good person
Learn about well-actuallys, drive bys, and feigning surprise. And don’t do them.
Watch your air time during conversations and meetings. Engineers in particular can be quiet or slower to speak
Don’t be a jerk. Don’t assume you’re not a jerk. You might be.
Help your coworkers get better! For more serious matters HR can be involved.
Code Quality
Take responsibility for outcome of projects
QA is your responsibility
Be the CEO of the feature. Proactive running back.
Write code to account for happy, sad, evil, and weird cases
Career
Be able to set goals for your career
Meta-cognition about your learning style, working style, communication challenges, strengths and weaknesses
Constant learning and industry awareness, even outside the scope of our product’s technology choices
Seek to understand the entire product you are working on, not just the scope of your features.
Signals of a poor team fit
Ignoring or shifting problems that are hard
Blaming users or PMs or QA for bugs
Focus on the letter of the tasks assigned, not the spirit
Taking code review personally
Sowing discontent, gossiping
Thinking you’re the smartest person in the room
Being a jerk
Being unwilling to learn, grow, and explore