>> Hi I'm Burkeholland.
>> I'm Aimee Knight.
>> This is five things that
junior developers need to know.
Thing number one, what do
new developers need to know to embrace success?
>> Get comfortable being uncomfortable.
>> I'm uncomfortable right now.
>> I probably am a little bit, but.
>> What does that mean?
>> Everything's changing around you
and you're probably never going to feel comfortable.
So you just need to embrace that feeling and go with it.
>> Absolutely.
>> Learn to love it.
>> I think the rest of us are also very uncomfortable.
Nobody knows what they're
going is what I'm trying to say.
>> It's a good thing though, because that's how you grow.
>> Right.
>> You always want to be
not the smartest person in the room.
>> That's very good advice.
I am definitely not the smartest person in this room,
or maybe Cameron is not the smartest person in
the room because he did forget the tripod plates.
>> True.
>> Thing number two.
What advice would you have for
new devs that are actually
writing code in their day to day job?
>> Yeah. So, for me when I went
from boot camp to a real job,
I had to shift from just my code works,
and does what it needs to do to code that a team can use.
So, abstracting things away making smaller methods like,
one thing that really helped me was to start learning
more functional concepts and
incorporating that into my code.
>> I read an article recently.
We'll, I have to find it for the show notes but,
it said that functional programmers make more
than other types of
programmers which I thought was remarkable.
>> Interesting.
>> Yeah, very interesting. I wonder why that is.
>> I don't know.
>> Functional programs underage.
What if you can't do
functional programming in your new job?
What if you're a junior dev in your writing Cobol?
>> So, I think there are, you can't obviously,
depending on the language that you're using,
you can't necessarily go purely functional,
but there are always functional concepts though.
I mean like writing pure functions
and stuff like that so that your code
is more testable and stuff like that.
>> I find functional programming tends to be a little
bit easier to wrap my head around than
an object oriented programming.
Maybe that's just the way my brain
works which is not very well.
But I tend to find functional programming
just easier to understand.
>> I like the fact that,
as I'm going through it I
don't have to worry about side effects happening.
>> Right. So if you change something,
something else might change
too that you're not ready for.
>> Yes. Introducing bugs like that.
>> Kind of like forgetting the tripod plates.
Thing number three. There's so much to learn.
How does someone who's just coming in know what to learn?
>> So, I think the key there is to learn how to learn,
and that's easier said than done.
But I think the way that you do that is,
practice learning a lot of things,
get faster at reading the documentation.
Again going back to getting
comfortable being uncomfortable.
You have to be okay
with not knowing the whole world right off the bat,
and just picking a small thing.
But again, like the best way,
just like keep iterating on that process and so
that you learn what your best learning style is.
>> You said something about this the other day
we're optimizing for iteration.
>> Yes.
>> And we talked about this.
>> Yes.
>> Where one of the best things you can really do is
just iterate and build these as fast as you can,
because as you do that you learn in the process.
Because if you wait for it to be perfect.
>> Yes.
>> It's never going to be.
>> Yes.
>> Number four.
What are some things that teens can do to prep for
new devs that are coming in to
make it easier for everyone?
>> Yes. Totally. So, it's super valuable
I think to bring on Junior devs,
but you do have to be ready for it.
There's a little pre-planning involved.
So you want to make sure if you can,
start writing test for your code.
Because I think the tests serve as
documentation for the people coming on and then
also you can quickly run
that test and make sure
like any PR that gets merged like,
the junior devs themselves can do
some due diligence before they put up the PR like,
did I not introduce
any regressions here by the test coverage.
The other thing too just
to make that PR process go a lot faster,
is there's so much that you can do lending wise.
Depending on how far you want to go.
There's lending for Max parameters,
and your cycle Medick complexity and stuff like that.
All things that, if you were to put up a PR
with this method that has
like 10 different if statements in it.
All that stuff can be done through code,
you don't have to actually have a person to do that.
>> Yeah it's really interesting,
and specific with JavaScript.
One of the things that I've found super helpful even now,
and would have been helpful earlier on,
is the prettier tool. Because prettier.
Right. I used to ask myself
really silly questions when I was earlier on like,
"Does the post go on the same line or should I
put it in a different line, Right?
So prettier. If you have a
prettier set up in place for people that are coming in,
then it will just automatically format
and they don't have to worry about that,
which would be super helpful, and be nice.
>> Yes. Be nice.
>> We've all been junior Devs.
>> Pair programming and
repair programming, let the junior drive.
Uncomfortable as it is
for the senior like lead the junior driver.
>> Just to sit in your hands like eeee.
>> Yes. I just got to do it.
>> Be patience patience. Thing number five.
We talked a bit about pair programming,
but what about mentoring.
What would you say effective mentoring entails?
>> Yes. So stepping back from that just
really quickly if you are on the fence about it.
I did research and
the mentor if you do decide to do this,
you're five times more likely to get a raise in your job.
>> Wow.
>> It's like super beneficial.
>> That's the reason I'm in today.
>> But, I think effective mentorship
entails that Junior has to come to
the table with questions that are ahead of time.
Like a set agenda is on
the mentee to go
ahead and get all that stuff knocked out of the way.
You need to be super respectful to the other person.
>> So the mentee needs to do some of
the work and not just just show up like okay I'm here.
>> They need to do all of the prep work.
They need to get it on the calendar.
They need to do it all.
You just have to be respectful.
>> I'm Burkeholland.
>> I'm Aimee Knight.
>> That's five things that
junior developers need to know.