Upgrade to Pro — share decks privately, control downloads, hide ads and more …

An Engineer's Guide to Developing People

An Engineer's Guide to Developing People

Making the leap to management isn't easy but, with the right skills and preparation, solving people and process problems can be incredibly rewarding and profitable. In fact, the experience and skills you've gained over the years may have prepared you for this new role without even realizing it! In this session, we will explore how software engineering principals and patterns can guide your journey to becoming a successful development manager. We'll cover what the role entails, common hurdles, and the mental shift required to do it effectively.

Gaines Kergosien

October 15, 2019
Tweet

More Decks by Gaines Kergosien

Other Decks in Technology

Transcript

  1. An Engineer’s Guide to Developing People @GainesK
    An Engineer’s Guide to Developing People

    View Slide

  2. An Engineer’s Guide to Developing People @GainesK
    Career Paths

    View Slide

  3. An Engineer’s Guide to Developing People @GainesK
    Leadership
    Guiding others towards
    a common goal.
    • Inspire
    • Motivate
    • Encourage
    Leading vs. Managing
    Management
    Dealing with or controlling
    things or people.
    • Plan
    • Organize
    • Coordinate

    View Slide

  4. An Engineer’s Guide to Developing People @GainesK
    Leadership
    “Leadership is the art
    of getting someone else
    to do something you
    want done because
    he wants to do it.”
    – Dwight D. Eisenhauer
    Leading vs. Managing
    Management
    “What’s measured
    gets improved.”
    – Peter F. Draker

    View Slide

  5. An Engineer’s Guide to Developing People @GainesK
    Leadership
    • Communication
    • Motivation
    • Delegation
    • Positivity
    • Creativity
    • Receptivity to Feedback
    • Responsibility
    Leading vs. Managing
    Management
    • Communication
    • Motivation
    • Delegation
    • Organization
    • Planning
    • Strategic Thinking
    • Problem Solving

    View Slide

  6. An Engineer’s Guide to Developing People @GainesK
    • Disturbance handler
    • Resource allocator
    • Negotiator
    • Liaison
    • Monitor
    • Disseminator
    • Spokesperson
    Manager Roles

    View Slide

  7. An Engineer’s Guide to Developing People @GainesK
    • Understanding Business Motivation
    • Building a Shared Vision
    • Defining Strategies
    • Setting Goals and Objectives
    • Scoping and Prioritizing Work
    Responsibilities – Planning

    View Slide

  8. An Engineer’s Guide to Developing People @GainesK
    Development of excessive technical debt without
    delivering corresponding value which meets a need
    creates unnecessary complexity and increased cost.
    • Focus on minimum viable products
    • Avoid complexity that does not deliver value
    Principle – YAGNI (You Aren’t Gonna Need It)

    View Slide

  9. An Engineer’s Guide to Developing People @GainesK
    • Understanding Business Motivation
    • Building a Shared Vision
    • Defining Strategies
    • Setting Goals and Objectives
    • Scoping and Prioritizing Work
    • Allocating Resources
    Responsibilities – Planning

    View Slide

  10. An Engineer’s Guide to Developing People @GainesK
    A singleton is a sole instance of a shared resource
    which is created once and exposed via a common
    interface.
    • Sacrifice transparency for convenience
    • Coordination through observation or notification
    Dependencies injection provides the required resource
    to those who need them.
    • Better handles instability
    Pattern – Singleton vs Dependency Injection

    View Slide

  11. An Engineer’s Guide to Developing People @GainesK
    • Setting an Example for Interaction
    • Engaging Stakeholders
    Responsibilities – Nurture Collaboration

    View Slide

  12. An Engineer’s Guide to Developing People @GainesK
    Pattern – Chain of Responsibility

    View Slide

  13. An Engineer’s Guide to Developing People @GainesK
    • Setting an Example for Interaction
    • Engaging Stakeholders
    • Facilitating Communication within the Team
    Responsibilities – Facilitating Communications

    View Slide

  14. An Engineer’s Guide to Developing People @GainesK
    • Optimization comes at a cost and increases
    complexity.
    • A simple approach should be used until
    requirements and implementation can be assessed.
    Principle – Avoid Premature Optimization

    View Slide

  15. An Engineer’s Guide to Developing People @GainesK
    • Being a Role Model
    • Cultivating a Motivating Environment
    • Empowering the Team
    • Focusing on Solutions over Problems
    • Inviting Productive Challenge
    • Celebrating Performance
    Responsibilities – Promote Performance

    View Slide

  16. An Engineer’s Guide to Developing People @GainesK
    • Cultivating Learning
    • Facilitating Training
    • Advocating for Individuals
    Responsibilities – Encourage Growth

    View Slide

  17. An Engineer’s Guide to Developing People @GainesK
    Pattern – Bounded Context

    View Slide

  18. An Engineer’s Guide to Developing People @GainesK
    • How do you measure the impact of communication?
    • What indicators should determine if a new team
    member is a good fit?
    • Which metric will tell us if code reviews are effective?
    • Is stakeholder satisfaction more important than
    quantity of work delivered?
    Measuring Success

    View Slide

  19. An Engineer’s Guide to Developing People @GainesK
    • What gives you energy?
    • What drives and excites you?
    • How do you feel accomplishment?
    • What types of challenges do you want to tackle?
    • What kind of work life would you enjoy?
    Why do it?

    View Slide

  20. An Engineer’s Guide to Developing People @GainesK
    1. Develop a plan
    2. Seek mentors
    3. Engage a coach
    4. Find your leadership style
    5. Get to know your team (one-on-ones)
    6. Trust your people and process
    7. Hone your time management skills
    Tips

    View Slide

  21. An Engineer’s Guide to Developing People @GainesK
    Silver Sponsors
    Platinum Sponsors
    Celebration Sponsor Lanyards Sponsor
    Notebook Sponsor Registration Sponsor

    View Slide

  22. An Engineer’s Guide to Developing People @GainesK
    Q & A
    Review
    1. Managing is more relational than technical
    2. Managers are multipliers
    3. Broader array of concerns
    4. More interrupt driven
    5. Success is more difficult to measure
    6. Delegation can be difficult
    7. Team success and satisfaction is rewarding
    Slides at DotNetDude.net

    View Slide