The festival of WordPress
January 22, 2021

This is an archive of the January 2021 event

A Note to My Younger Self: What I Wish I Had Known as a Junior Dev

Growing representation in tech means supporting each other in leveling up in our careers. We’ll explore strategies and questions to ask yourself for getting what you want out of your roles and careers – including tools and processes that will help you work well, your teams communicate and share accountability, and things to think about when making sure your job feels meaningful and aligned with your goals.

Time: 5:00pm UTC
Region: Americas
Stage: Global Stage

Hi everyone! Welcome to

“A Note To My Younger Self – What I wish

I had known as a Junior Dev”.

This talk is meant to be a love letter

to the me a few years ago that started

out in computer science

and to you, junior developers who

sometimes struggle to find mentors,

navigate difficult teams, and figure out

how to do your best work.

But before we dive into that and how I

hope that you can be successful,

a little bit about me! My name is Fatima

and I’m a Developer Programs Engineer at

Pantheon. I work on maintaining our open

source developer tools,

delivering trainings, and talks like this

one and engaging with our customers and

our community!

You can find me on the internets as

@sugaroverflow

and in the past I’ve worked with teams

at Microsoft, the City of Boston

Digital Echidna, and Code for Canada. In

Communications and Technology Canada’s

Rising Star award. I’m passionate about open

source

civic technology and making technology

spaces more inclusive.

Which brings us to why I’m giving this

talk!

I believe strongly that one way to

improve representation in technology

is to help support, share, and level up

our junior developers –

to help provide them with opportunities

and mentorship to help them succeed!

I have been really fortunate to have had

amazing mentors who

supported me, opened doors for me, and

provided advice –

especially in those moments where I felt

like an imposter

and I wondered if tech just wasn’t for

  1. In this talk,

I want to share the various lessons I’ve

learned over the years

and the things that I’d like to tell

myself back then. Some of these are a

direct result of bad experiences

and others are from speaking to and

sharing stories

across the communities I’ve worked with.

As

I was putting this talk together, I

realized that there is so much more than

what I could cover,

so this will be a little bit of a

lightning talk of all of the things that

I find

most important to convey! At the end I’ll

share a bunch of links to articles,

books, and to podcasts that I recommend

if you want to continue thinking about

this and exploring what works best for

you

as you embark on this really exciting

career of being a developer!

As a frame of reference of the order of

things that we’ll talk about today, this

is what I imagine the junior developer’s

journey to be like –

finding a job and figuring out what you

love to do

and then getting hired and understanding

your new team and how to work best with

them.

And as you’re working on projects and

figuring out how to continue to learn

and grow

while creating workflows and tools and

leveraging them

to see what works best for you.

Finally your career,

setting goals, and figuring out where

you’re headed on this career path and

developer journey of your life!

[laughs] That just sounds so dramatic, but we’ll start

with the hiring process

which I think sometimes is the hardest

part of being an entry-level developer.

It’s finding the right job and a lot of

times there isn’t a right job.

Many people will encourage you to find

something that you’re passionate about

others will tell you to work on things

that you’re good at.

I’ve honestly found that sometimes in

following the things that I was

passionate about,

I was disappointed in the way

organizations were structured

or the dynamics of a team that I was on.

I would get really caught up by one

thing that I

really liked about an organization or

program and forget to look at the whole

picture.

Of course it was still really amazing

and exciting to be a part of something I

was passionate about,

but more than often it led to a lot of

burnout because I wasn’t able to

separate that work-life balance.

I’m still notorious for crossing that

line all the time so that’s not

something I’ll give you advice on [laughs] .

Maybe in another five or ten years I’ll

write a letter back to me again

as a senior developer. Maybe I’ll finally

have discovered how to keep that balance

and I’ll be able to share it with others.

We’ll see about that! [laughs]

So I’ve actually put together a criteria

of things, after much reflection

that are important to me about a job.

Some of these questions are:

What does the executive team look like?

What are the company’s values?

And how do they demonstrate these values?

Is there a code of conduct?

Do the engineering teams have a career

ladder?

Who will the people I’m working with be?

What kinds of projects do they currently

work on?

Are those projects that inspire me or

are those projects that I want to work

on?

And because I love data and spreadsheets,

I like to categorize these questions by

 

theme so: career, path, team, values, and then I’ll start

to weigh them by importance.

So when I’m talking to companies or

interviewing I start scoring them on the

different things that I’m interested in.

Of course at the end of the day it’s

really just data

and I may not even go work for the

company that gets the highest score in

my criteria,

but what it really helps me with is my

gut feeling versus the data.

So I might get really passionate about

working at company “A”,

but they’ll score really poorly in my

spreadsheet of values and

assessments – that’ll really make me

think:  “Why do I want to work at this

company that isn’t really aligned with

the things that I find useful?”

and that’s a really important reflection

and conversation to have with yourself.

Looking back at my criteria last year, I

realized that

not everything I thought was as

important as it would be

was as important as I thought it would

  1. [laughs] It’s a

funny sentence, but it turns out that

it’s more important to me what kinds of

projects I work on

and not so much the team that I work

with or

it’s more important that there’s a

structure built into the organization

for mentoring

than the autonomy to decide and work on

my own projects.

And so some of these values and

criterias continue to grow, especially

for me as I experience new types of jobs,

new roles, new community and

company structures – my

values and my

criteria continue to grow and I’ll continue to

assess

future opportunities by those grown

categories. As I did research I realized

that several people have created

spreadsheets and frameworks on the

internet so

there’s a couple of blog posts that I’ll

share with you so you can explore those

resources

at the end of this presentation. What I

really recommend

is reading some of those blog posts and

seeing how people have created their

criteria –

even checking in with me on twitter and

asking me about mine!

And then creating your own! So create a

set

of criteria or questions or categories

that’s unique to your experiences and

the things that you value most in your

career.

As you’re doing these interviews and

you’re looking at jobs you’ll also want

to figure out how you work best.

So what are your strengths or weaknesses?

What are things that you’re good at that

you want to continue doing?

I’m sure you’ve realized by now that I

love making lists! [laughs]

The internet and your friends will

encourage you to make a pros and cons

list for every job decision that you’re

trying to make.

I always take that and I add a little

bit more

nuance and categories to it. I do want to

make sure I say that

what I’m recommending to you is what’s

worked for me

and your mileage may vary. so I would

take these ideas,

sit with them for a little bit and then,

turn them into your own.

If you end up creating your own

categories, I’d love to hear about them!

So for figuring out what kinds of work

you like to do, I’d fill out a chart like

this one!

What are the things that you liked

about projects you’ve done in the past?

What are things that you learned that

maybe you want to continue to learn?

What is something that you longed for, maybe

something that wasn’t available during

these projects or

something that would have made this

experience a lot better for you?

As you do this retrospective on the

projects that you’ve worked on,

even those that maybe you’ve worked on

in your studies,

I would really think about what excites

you!

What are the things that give you

joy? [laughs]

And those are the things that you really

want to highlight and look for

in the opportunities that you’re

considering.

One of the things that I want to mention

here too, is that it’s really important to

know

what you’re good at and also what you

love to do.

For me sometimes those two things

are different. For example,

When I was working on an agency, I was

really good at doing front-end

development work

and oftentimes because I was good at it

I got assigned

a lot of that work. There came a time

where I had to go to my technical lead

and say “hey, I know you keep giving me

front-end work

and I do I enjoy it but I would really

really enjoy it if you would give me

more back-end work

because I find back-end development to

be challenging and exciting

and I really want to work with

connecting different systems or building

custom modules or plug-ins.

That’s where I want to go with my

career.” And so

I learned through my experience with

that really great tech lead that

I was really good at css, but I

I really wanted to work on back-end

development and you know

knowing those two things is really

important because

you can think about it as you’re

assessing some of these jobs.

There’s a couple of other things here as

far as interviews,

assessing how employees feel

when you visit or

see them on zoom calls, and I’m not

really covering things like

assessing the culture of a company,

but there’s a lot there when you’re

figuring out what you’re interested in

and what values you have and what

aligns with that.

Let’s say that you decided to go

with a job and you’ve gotten hired and

you’re being onboarded to work with your

team on some really cool project!

Before you dive into that project and

your day-to-day,

it would be a great idea to get

a baseline

with your team. How does everyone work

best? What

are each of your roles? What’s expected

of you? Will you have regular check-ins?

Will you get a mentor assigned to you?

It’s always good to ask about these

things in the beginning,

but if it’s too late and you’re already

working at a place, I totally recommend

checking in

with your manager and saying, “hey, I have

some conversations I want to have with

you about my role

and these are things that are important

to me.” whether that’s

“hey, I don’t know how to work best with

a teammate” or “I would like a leadership

Impact plan – I want to see where I’m

headed.” or

“I want to understand how we can all

collaborate.”

There are a couple of different tools

and resources by which you can do these

things with your teams.

There’s user manuals – you can run these as

an activity where

every team member can share the

different ways that they work best,

how they like to give and receive

feedback, how they communicate best.

Maybe somebody doesn’t like being

approached at their desk or they

don’t like really long emails and would

prefer to talk about things face to face.

Or maybe they do prefer emails and they

like to think about what they want to

say

and don’t prefer the real time

communication of zoom calls. So

there’s a lot of things that you can

explore with user manuals.

Especially being a junior developer,

I think you may not have the power on

your teams to say “hey

let’s have a RACI where we can decide

who’s accountable and responsible for

the success of this project”,

but what I would recommend in that case

is talking to your manager and saying

“hey, I would like

a lot more clarity about a project – who’s

responsible for

doing X in this project or

who should I go to to get more

information about Y?”” and they can go

ahead and

go about the processes by

which they can bring this information

together for you,

but also for the benefit of the rest of

your team.

Another thing that I’ve seen lacking

in some places

is retros. How often does your team

reflect and review things?

Especially with projects that have been done

and kind of look back and see

how things could have been done better.

If that’s not already happening, I would

highly encourage you to reach out

to whoever you report to – whether that’s

your manager or even HR

at your company and say, “hey I think we

would benefit from retros”

if you’re not already having them.

Speaking of project, that’s

really where the fun stuff is!

One of the most important things I want

to mention here is that – it’s okay not to

know something! In fact,

knowing what you don’t know is probably

a really great skill!

One of the best recommendation letters

that I received was from

a dear mentor and friend of mine in the

civic tech community,

was when he was talking to somebody that I

was interviewing with

and he told them, “she knows what she

doesn’t know”.

At first when I heard that I was

really taken aback –

and I was like “hey, is that really a

recommendation?”

Years later, I really

value that recommendation and that

advice

because it’s okay to have gaps in your

knowledge and it’s probably a good thing

to know what you don’t know

before you spend a lot of time digging

into it without asking for help.

Unfortunately though, not everyone works

in an environment where

asking for help is a good thing, so if

you’re stuck

in a culture where asking for help is a

problem or you don’t have any mentors

provided for you,

I am so so sorry! And I hope that you

either find a way out to a better place

or you find a community on the internet

that

can support you. There are a lot of

mentors on tech twitter and

there’s organizations like Diversify

Tech that just work to

improve the community and connect people with

opportunities and

friends to be in this together.

While we’re talking about how we work, I

encourage you to build your own

developer workflow!

I call this “shoulder surfing” – it’s kind

of the term that I’ve coined, but

it’s for literally watching my senior

developers over their shoulders

or pair programming with them. So what I

really liked and found value in

was seeing the way that they did their

work –

starting from the beginning with a

ticket to reading the ticket,

processing what it was about, maybe doing

some R&D

to confirm some assumptions or looking into

something,

and then working on that ticket,

reviewing that code, testing that code,

deploying it,

and kind of just watching their entire

process and

how they leverage

the different things in their workflow

to make that process work for them.

Also to

output really great code and what I

learned was

“Wow! Each one of my senior developers has

their own way of going through

that process!”

Even if we were all using the

same tools and libraries,

each person has toolkit of

things that they use.

For example, one of my favorite git

commands is the git add patch command

what allows me to add partials to commits

and review them as I’m adding

them.

I would encourage you to

explore

different types of tools and explore the way

that people work and how they customize

their

their processes and then find your own

way through that.

I think finding your own process

sometimes takes a little bit of time,

but I wanted to share a couple of my

favorite apps in my toolkit

and allow you to explore them as

well!

Kaleidoscope is a really great app that

allows me to do

visual code reviews so it’s like

when you look at

a pull request on github.com and you can

see

the additions and deletions and

line by line.

[On Github] You’re looking at the original and then looking

at the pull request, but what’s great

about kaleidoscope is I can do that on

my local and

I can review my code before it goes out.

Or I can review the code that a

developer has written

and I can review it against the

main branch that they were working on

or even against a commit to see

where they made changes

to a feature or where they went

down a certain path of implementation.

I really recommend kaleidoscope

and I also recommend the other ones on

this slide.

I’ll just name screenflow which I think

is also a really great app

because it allows you to take these

screenshots that can float around

your screen.

If you’re reviewing some

front-end work, you can compare it to a

mock-up

or if you have a bunch of steps that you

need to follow to test something – maybe

you’re doing QA –

that’s really great because you can keep

the steps with you and the screenshot can follow

you around the screen. I highly

recommend all of these tools

and they’re all linked so I’ll give you a

link to the slides and you can check them

out

and see if they work for you and for

your workflow.

The last thing I want to cover is

probably the most important and that is

growth.

Where do you want to be in five years?

And

if you don’t have an immediate answer

for that, that is totally okay.

Some of us like to live in the moment

and some of us like to plan

our whole lives out down to what jobs we

want to have and

how long we want to stay there. It is

important to me though

to understand where my current role is

going.

What’s the trajectory of this particular

role?

Where does it go in two years? Where does

it go in three years?

How can you reach those trajectories?

How can you set

goals in order to continue to improve

towards that career path?

If your manager isn’t already

checking in on things like this or if

you don’t have scheduled reviews,

I recommend asking for it. You can say

something like

“hey, I want to know where I’m headed from

here and what things I can

improve on?

Can we talk about that and can we set

some goals for

the quarter or for the year?” depending on

how your organization runs

check-ins and points of

importance.

I do want to point out that I have also

worked with a lot of developers who are

just happy where they are.

They weren’t as interested in moving up

some kind of

ladder from junior to senior to

tech lead.

And they weren’t necessarily looking

forward to position in developer

management, for example. That’s all to

say that if you are content with where

you are

and what you’re doing that’s totally

valid and don’t let me

tell you to make a plan. [Laughs]

When I’m thinking about things like

these I visualize it like a balance.

So on one side is the balance of things

that this organization provides to you –

these are going back to our

criteria of

assessing companies and positions. These

are the things

that really brought you to this company

and that continue to

give you value so you stay there. And

then on the other side, we have the

balance of things that you deliver.

This is what you bring to the company,

what value you’re bringing in,

what talent or understanding

or specific skills that you’re

bringing in. I think the different

things

on either side of this balance, for me,

have different importances

and different weights.

For example,

if I’m working on projects I

love – that’s something the company is

providing to me – they’re giving me

opportunities to work on things that I’m

really excited about

and that I feel are really valuable.

However if I’m dealing with

microaggressions every day or my

teammates are

really really hard to work with and it’s

a constant struggle –

that’s resilience and patience that I’m

putting in. That’s something that

I’m bringing to the organization.

You have to think about it as not the

balance of things for someone else,

it’s the balance of things for you!

And for me

what usually happens is that this

balance needs to remain relatively equal

as I continue to work at a place.

To give you another example, if I’m

passionate about diversity inclusion

and I like to talk about it at events

and provide

actionable items where we can

improve that’s something that I’m

providing that makes the company look

good.

If the company continues to support

me and sponsor me to speak at events,

that’s something they’re providing that

makes me really happy. Those

are two things that are kind of

equivalent

on the balance, but if you remove one –

let’s say the company no longer has the

budget

to sponsor me speaking at events and

that’s something that was really

important to me

and a part of why I valued this company –

suddenly that balance is off:

I’m providing more than the

company is providing to me

and that’s a big change in the way

that I work

and it would it would require me to

reassess what this balance looks like.

I like to be really conscious about

what’s important to me,

what belongs on either side of this

balance and then continue to

assess and re-evaluate this balance

every few months.

If there’s a big change in

the way that we work

as a team or a really big project or a

new goal for the year,

I come back to this and I think:

“how does that change my balance?”

or “Do I still feel really good about what

the company is doing for me and what I’m

doing for the company?”

One of the indicators that there’s

something wrong with the balance

you have

is if you’re feeling burnt out or tired

about work all the time

or you feel really anxious on sundays

going into a monday of work –

I come back to this and I think

“Am I giving more than necessary without

receiving anything in return?”

When that happens, I ask “are there

circumstances that can be changed

in order to fix the balance?”” If there

are things that just can’t be fixed,

“Do I need to move on and find another

job?”

That being said, the important thing here

is to find what works for you

and how you can best support yourself in

your career.

As a junior developer, I had a habit of

thinking that I was indebted to a

company for hiring me

because I felt like an imposter in

technology. I think a lot of that

comes back to

being a woman of color in

technology and

just having to work on my own

self-esteem and having to work

on developing my own sense of worth and

knowing that

I have talent and that I have

a lot to contribute.

So that’s something that is an us

problem that we have to work on

ourselves. Even when I was preparing

for this talk, I was thinking

“well am I really a senior developer? I

guess I’m not

a junior developer, but do I really have

advice that I could give

and share with people?” and I

went through this cycle of

“I think I have advice, but would this

advice be useful?”

At some point, I just had to stop

myself and think “yes,

I do have the unique experience of being

a young woman and a person of color in

technology

and I do have a lot to say and a lot

to share and a lot of advice that I have

to impart

to the me five years ago.”

And hopefully to the you that is setting

out on your career. So

this is your scheduled reminder that you

are awesome! You deserve to be celebrated

and treated well. You deserve to work

at organizations that value you,

value your skillsets, and celebrate you

for the work that you do.

Thank you so much for your time! I am so

grateful to be able to share a very

small slice of what I’ve learned –

sometimes the hard way – over the years. If

you have feedback on this talk

or how it can be improved, I’d love to

hear that as well!

I’m thinking next time, it could be cool

if it was a storytelling

adventure

where you can follow young fatima as she

joins a company,

encounters really awkward situations

with teammates and managers,

but learns things over time! I was

talking to a friend today

about how I felt like I wasted a

year of my life

working at a certain company where I

didn’t feel like I had any growth

and I was constantly miserable and

frustrated with the team dynamics.

He said to me, “we never really

waste a year,

we just learn a lot, sometimes the hard way.”

And so,

that was a lesson that I felt like I

wanted to share because it was so timely

given that we’ve just come out of a

really rough year and many of us may be

feeling like it wasn’t what we wanted it

to be.

I’m trying to rephrase that narrative

and tell myself that

even if the year didn’t feel useful,

it taught me a lot and today I get

to share some of that with you!

If you’d like to reach out and talk more

about things like this, you can find me

on twitter

@sugaroverflo. I’m always happy to have

conversations

and learn from people’s experiences and

grow.

Also included is a link to these slides

and

a collection of links to some resources –

podcasts, books, articles that I read when

I’m thinking about my

career and some better or nuanced

advice that might apply to you.

I hope you’ll explore those if you’re

looking for more and I hope that you’ll

have a wonderful

WordFest Live 2021. Thank you so much for

your time

and take care, stay safe, and remember

that you are really, really great and

awesome!

I hope the places that you work and the

people you work with continue to value

you!

Thank you!

Share this session

Share on facebook
Share on twitter
Share on linkedin
Share on pinterest
Share on email