Skip to content

Latest commit

 

History

History
95 lines (82 loc) · 4.48 KB

am-i-senior-yet.md

File metadata and controls

95 lines (82 loc) · 4.48 KB

Grow your career by teaching your peers.

People tend to gravitate towards technical aspects, which is important, but you'll need to learn other areas.

A senior developer understands that you cannot do everything yourself. Their primary role is to help their team get better. - Matt Brigs

Software generally is built by teams of people, not individuals. Your primary role should be about leveling the team up.

Teaching

Teaching will help your career move forward. Teaching allows you to maximise your impact. Employers wil hire, promote and reward high impact engineers.

How do I become a better teacher?

8 lessons

  • A question is an opportunity for growth (for who asks it) Situation: Someone may jump into your desk and ask you something. Standard approach: Just answer a fix. Better approach: Use the opportunity to teach someone something so they can solve their problems in the future.
    • Do they undertand the problem?
    • Do they understand the context?
    • Can they identify the root cause?
  • Learn to tailor your response to your audience. Take the time to consider who you are taling to.
    • Consider things like
      • Background
      • Experience level
      • Comfort level
      • Motivations
      • Goals
    • Skills vs will matrix.
      • Junior new hire ↑ Will ↓ Skill
        • Highly motivated to learn
        • Hasn't had time to builde their skills yet
        • Guide
          • Provide tools, training, and guidance
          • Remove obstacles
          • Reduce risk
      • Junior 1 month in ↓ Will ↓ Skill
        • Starts to realise how much they don't know
        • Hasn't had time to build their skills yet
        • Direct
          • Provide clear explanations
          • Identify motives
          • Develop a shared vision of success
      • Mid level engineer ↑ Will ↑ Skill
        • Loves what they are doing
        • Highly skilled
        • Delegate
          • Provide freedom
          • Communicate trust
          • Develop stretch goals
          • Broaden responsibilities
      • Senior engineer ↓ Will ↑ Skill
        • Highly skilled
        • A little bored
        • They've done all of this before
        • Excite
          • Point out challenges
          • Identify their interests
          • Align interest with their work
  • Resist the urge to teach by doing. If you are doing most of the typing, 9/10 times this person will not understand everything you just did. Are there exceptions to this rule?
    • If you are trying to replicate something
  • Keep an eye out of mimicry. Aka: Cargo cult. Mimikin code, copy and pasting code. Big red flag. Is not okay to do that in production code. If people do that it means that they are really not understanding what they are doing.
  • Teaching is about communicating effectively. Teaching is all about communication skills. Human interactions are plagued by packet loss (background, context, emotion, intention, energy...).

    The single biggest problem in communication is the illusion that it has taken place - George Bernard Shaw How effective you are at conveying information? How much is your audience receiving? 50%? 20%? Ask people to replay what you just communicated. Good opportunity on meetings, standups... Communicate what you need to communicate in the less time as possible.

  • Have realistic expectations. Teaching is a marathon is not a sprint. People need time, be realistic.
    • You cannot expect them to absorb everything at once.
    • Maybe they are progressing in ways that you haven't noticed. If it something you really need to come across, repeat it.
  • Teaching also benefits the teacher. Everyone has something to teach. Teaching helps with:
    • Building confidence
    • Solidifying your own knowledge
    • Practicing your ability to communicate effectively
    • Creating opportunities for feedback
  • Talk to your manager about how can you learn more effectively. Managers are just trying to help you become a better engineer. Talk about ways that your manager can help you
    • Providing more opportunities to teach
    • Providing challenges
    • Adopting teaching focused practices
      • Paired programming
      • Show and tell
    • Helping you with conference submissions

True learning involves a permanent change int he way you see and act in the world. The accumulation of information isn't learning.

  • Benjamin Hardy

References