23
SELF.IMPROVE() BUILDING A TECHNICAL CAREER NDC LONDON 2017

self.improve() - Building a Technical Career

Embed Size (px)

Citation preview

SELF.IMPROVE()BUILDING A TECHNICAL CAREER

NDC LONDON 2017

WHO AM I?Hi! I’m Erika

(I’m @eacarlson, too.)

I’m a software developer.

I work at Detroit Labs in Detroit, Michigan.

I train and coach software developers.

WHAT IS THIS?

STEP 1: JUNIOR DEVELOPER

STEP 2: WEIRD MIDDLE AREA

STEP 3: SENIOR DEVELOPER

image by sarahcandersen.com

1. BEGIN WITH THE END‣ Build your career around 2 questions:

‣ Where are you going?

‣ How are you getting there?

‣ Ask yourself the following questions every 6-12 months:

‣ What do I want my career to support?

‣ What are my tangible & intangible career goals?

‣ What obstacles are preventing me from reaching my goals?

‣ What am I doing to work toward my goals?@eacarlson

2. LEARN TO LEARN‣ Learning is one of the most essential pieces of being a

developer

‣ Learning is a skill in and of itself

‣ Components of effective learning:

‣ Ask good questions

‣ Identify appropriate resources

‣ Recognize & apply general principles

‣ Filter out noise@eacarlson

2. LEARN TO LEARN‣ Rapid, effective learning is a key business &

interpersonal skill as well as a technical skill

‣ Know your learning style

‣ Opportunities for learning:

‣ Group: Conferences, classes, workshops, meetups, user groups

‣ Solo: Mentoring, coaching

‣ Self: Books, tutorials, projects@eacarlson

3. LEARN TO TEACH‣ Levels of Knowledge

‣ Understanding

‣ Applying

‣ Teaching

‣ Components of effective teaching:

‣ Seek feedback & make real-time adjustments

‣ Offer constant opportunities for practice

‣ Allow students to fail@eacarlson

3. LEARN TO TEACH‣ Benefits of teaching:

‣ Deepen knowledge of teaching topics

‣ Learn to build rapport with a room

‣ Practice breaking down complex concepts

‣ Develop communication skills

‣ Learn to give & receive effective feedback

‣ Practice public speaking

@eacarlson

4. JOIN A COMMUNITY‣ The software community is an incredible source of

learning, growth, and professional & personal support

‣ Tap into your local community at events, and more broadly through Slack, Twitter, and other networks

‣ Professional contacts are among your most valuable career resources

‣ Emphasize quality over quantity & giving over getting

‣ If you don’t have a community, create one!

@eacarlson

5. KNOW THE BUSINESS‣ Most of us are writing code to make money, whether

for ourselves and/or someone else

‣ If you’re working for a client, learn everything you can about their business model

‣ If you’re working on a product, learn that product inside out, upside down and backwards

‣ Business knowledge facilitates communication with stakeholders, and builds trust by allowing you to make educated recommendations about the product

@eacarlson

6. ENGAGE IN GROWTH WORK‣ Growth work means intentional growth, over and beyond

learning through daily experience

‣ Examples of growth work include:

‣ Setting & working toward professional goals

‣ Developing new skills

‣ Asking others for feedback

‣ Actively working to identify & overcome weaknesses

‣ Working with a mentor or professional coach@eacarlson

7. GIVE & RECEIVE FEEDBACK‣ Feedback is one of the most effective ways to improve

individual and team performance

‣ Positive feedback helps you recognize and cultivate your strengths

‣ Constructive feedback is invaluable in helping you determine where you need to improve and grow

‣ Seek feedback from a mix of colleagues

‣ Giving and receiving feedback are both valuable skills worth developing

@eacarlson

7. GIVE & RECEIVE FEEDBACK‣ 5 quick strategies for doing feedback better:

‣ Accept positive feedback graciously; don’t deny or minimize; simply say “thank you”

‣ Accept constructive feedback without arguing, pushing back, or getting emotional; simply say “thank you for the feedback”

‣ Allow yourself to “sit” with constructive feedback until you feel less emotional about it; then decide if and how to act

‣ When giving feedback, be specific, thoughtful, and direct; ask before giving unsolicited feedback

‣ Always assume positive intent@eacarlson

8. BUILD AN ESCAPE HATCH‣ The ability to build your career hinges on the ability to

leave situations that are toxic, damaging, or causing your growth to stagnate

‣ Develop career security by:

‣ Building your professional network

‣ Keeping your skills current through continuous learning

‣ Making your work visible and searchable

@eacarlson

9. CARE FOR YOURSELF‣ Caring for your body, mind, and heart are essential to

healthy career growth

‣ Software development is physically sedentary and has the potential to be psychologically stressful

‣ The ability to “work from anywhere” can be a significant perk, but it leaves software developers prone to overworking

‣ Even if you do everything else right, poor physical or mental health can destroy your career

@eacarlson

9. CARE FOR YOURSELF‣ Take a “self-care inventory”:

‣ Am I physically healthy enough to participate in the activities and relationships I want to?

‣ Am I emotionally healthy enough to enjoy the activities and relationships I want to?

‣ Am I suffering from any illnesses that are or could be stress-related?

‣ Does my work contribute more positively or more negatively to my physical and emotional health?

‣ Are physical or mental health challenges interfering with my ability to do my job to the best of my ability?

@eacarlson

10. LOVE YOUR DRAGONS

image by dharmacomics.com

10. LOVE YOUR DRAGONS‣ Fears represent your greatest opportunities for growth

‣ Your fears are not an irrevocable part of who you are

‣ Take a “fear inventory”:

‣ What am I afraid of?

‣ What’s the underlying fear?

‣ What steps could I take to overcome this fear?

‣ What could I gain by moving beyond this fear?

@eacarlson

QUESTIONS?

@eacarlson