00:00:00.000
so just to like introduce myself a
00:00:02.700
little bit I'm Allison
00:00:04.799
um today we'll be talking about getting
00:00:06.359
up to speed on new code bases
00:00:09.300
um my pronouns are she her and I think
00:00:11.460
that covers all the like super super
00:00:13.559
basic introductory level things
00:00:16.440
um and also this will be less of a focus
00:00:18.960
about you personally being able to get
00:00:22.680
up to speed on things quickly and more
00:00:24.779
of an Institutional focus of what are
00:00:26.820
some practices that you can bring into
00:00:28.800
your workplace and your work culture to
00:00:31.320
really facilitate that for everybody on
00:00:34.980
your team
00:00:36.960
so just to give you a little bit more
00:00:38.640
about my background
00:00:40.559
um so I don't come through like a
00:00:42.780
traditional like computer science degree
00:00:44.820
background
00:00:46.379
um in 2019 I graduated with a BS in
00:00:49.440
Neuroscience from Trinity University I
00:00:51.960
dabbled in computer science a little bit
00:00:53.399
took a handful of classes but my main
00:00:55.379
focus was neuroscience and music much
00:00:57.180
more life sciences
00:00:59.820
um and then my first job out of college
00:01:02.219
was a research assistant at the
00:01:04.440
Children's Learning Institute under UT
00:01:06.060
Health so most of the projects that I
00:01:08.400
were working on were focused on early
00:01:09.960
childhood education language and
00:01:11.700
literacy
00:01:13.320
um and I'm like you know happy to chit
00:01:16.619
chat if you want to connect after this
00:01:18.600
but
00:01:19.979
um yeah basically I was doing a lot of
00:01:21.479
Assessments with kids surrounding their
00:01:24.180
language skills and verbal expressions
00:01:27.960
in the spring of 2022 I decided to do a
00:01:31.380
bit of a career change I went through
00:01:32.820
the Flatiron boot camp program where I
00:01:35.460
learned how to code in Ruby and react
00:01:38.840
and now
00:01:40.740
also into sprinkled through all of this
00:01:42.840
I was teaching private music lessons
00:01:45.119
violin cello piano and doing some
00:01:48.000
tutoring and then now these days I'm a
00:01:51.299
junior developer at workforce.com which
00:01:54.060
is a SAS company that focuses in
00:01:56.939
workforce management so scheduling
00:01:59.100
payroll we're building a payroll product
00:02:00.960
right now it's very exciting learning a
00:02:03.180
lot about tax laws
00:02:05.219
um so I know if you're about about
00:02:07.680
learning just from my professional
00:02:09.599
background and then also I've started my
00:02:12.480
first tech job within the past years so
00:02:14.580
I'm kind of familiar with
00:02:17.180
being kind of tossed in the deep end a
00:02:20.099
little bit
00:02:21.660
um so
00:02:24.060
because things don't exist in a vacuum I
00:02:26.700
decided to send out a little informal
00:02:28.379
survey to some of my friends and
00:02:30.180
colleagues just to feel out
00:02:32.400
what other people think about things in
00:02:35.280
this area specifically I was interested
00:02:37.080
in what are some of your favorite tools
00:02:38.879
when you're learning something new what
00:02:40.920
sorts of resources do you tend to go for
00:02:43.680
and then what do you really dislike what
00:02:46.080
is your least favorite kind of tool to
00:02:48.180
work with
00:02:50.700
um and so just a couple of patterns that
00:02:53.819
emerged it kind of corroborated my own
00:02:56.040
experience
00:02:57.180
but collaboration is a super popular one
00:03:00.540
among the
00:03:02.280
resources that people really like to use
00:03:04.739
people really enjoy collaborating with
00:03:06.959
their peers and asking other people
00:03:08.340
questions
00:03:10.379
um definitely a love-hate relationship
00:03:12.659
with documentation
00:03:15.000
um sometimes it's really useful and then
00:03:16.739
sometimes it really does not help you
00:03:18.659
get on board at all and then a lot of
00:03:22.140
other miscellaneous online resources are
00:03:24.120
also pretty popular
00:03:26.340
so people who usually kind of draw from
00:03:28.200
a wide variety of sources
00:03:30.780
and I also asked some more open-ended
00:03:33.360
questions about what was helpful and
00:03:36.120
then what absolutely sucked about your
00:03:38.640
onboarding experiences which also kind
00:03:40.980
of validated my own experience and
00:03:42.959
helped me narrow down some themes
00:03:45.659
so
00:03:47.280
the main themes that kind of stood out
00:03:50.340
to me are Stress Management
00:03:53.459
consistent patterns and mentorship
00:03:58.620
so first things first also get to put on
00:04:01.440
my little Neuroscience hat for a little
00:04:03.239
bit here is striking a balance between
00:04:06.420
stimulation and stress
00:04:09.540
so one of the things that I want us to
00:04:12.060
help all understand and to get us all on
00:04:14.879
the same page is what is
00:04:17.459
stress making sure we have a common
00:04:19.680
definition of what stress actually is
00:04:22.620
and so I feel like we tend to think
00:04:24.180
about stresses mostly a mental
00:04:25.800
experience or an emotional state like
00:04:28.380
we're feeling stressed we're feeling
00:04:29.880
worried we're feeling all sorts of
00:04:32.759
turbulent emotions
00:04:35.040
but stress is not just in your brain
00:04:38.520
it's physiological and it's
00:04:40.380
psychological and it's a Cascade of
00:04:43.020
effects in response to a stressful event
00:04:46.919
so basically what happens is there is
00:04:50.220
either a physical threat
00:04:52.860
or a perceived threat
00:04:55.199
and that sets off this chain of
00:04:57.419
reactions in your whole entire body so
00:05:00.540
in the brain it causes release of
00:05:03.780
neurotransmitters
00:05:05.759
that stimulate and really suppress some
00:05:08.340
parts of the brain and activate others
00:05:11.400
um it also triggers the release of all
00:05:13.500
these hormones from various glands
00:05:16.020
throughout the body that cause this more
00:05:18.479
long-term
00:05:20.580
impact of stress because they're
00:05:22.199
circulating the blood so they take
00:05:23.460
longer to get where they need to go and
00:05:25.560
that's what causes the changes in blood
00:05:28.020
pressure
00:05:29.460
increasing blood sugar increasing your
00:05:31.860
heart rate slowing down digestion and
00:05:34.199
what's mostly important about this is
00:05:36.180
that there's some impacts of stress that
00:05:38.460
linger after the initial stressful event
00:05:41.759
like you know getting chased by a tiger
00:05:43.800
or delivering a presentation
00:05:46.080
the good news is stress is not
00:05:48.240
inherently bad it's very evolutionarily
00:05:50.220
advantageous but it has some impacts on
00:05:53.940
how we function
00:05:57.360
so stress can impair memory and
00:06:00.000
retrieval specifically updating memories
00:06:02.340
and it nudges your brain towards more
00:06:04.560
rigid habitual learning versus more
00:06:06.960
cognitive and flexible learning so kind
00:06:10.199
of the easiest way
00:06:11.940
that I conceptualize it is it's very
00:06:15.060
good for wrote things so like CPR is a
00:06:19.919
fantastic example it's that's those
00:06:22.740
sorts of things where there's like very
00:06:24.500
sequential steps where you're doing the
00:06:26.759
same process every single time kind of
00:06:29.100
muscle memory things
00:06:30.780
stress can actually kind of give you a
00:06:32.880
little bit of boost of a boost in those
00:06:34.560
areas just because when there's more
00:06:36.419
emotionally Salient things and the
00:06:39.300
things that are titled is more
00:06:40.380
emotionally intense sometimes they're
00:06:42.240
easier to remember
00:06:44.880
um whereas if you're doing something
00:06:46.259
that's a little bit more cognitively
00:06:47.639
complex that involves like dissecting a
00:06:50.100
problem or the creative problem solving
00:06:52.139
it's not you know following the exact
00:06:54.120
same sequential steps every time it's a
00:06:56.460
little bit more difficult and so
00:06:59.759
stress lowers activation in the
00:07:01.440
prefrontal cortex which is the part of
00:07:03.120
our brain that's responsible for
00:07:04.620
rational decision making processing
00:07:06.720
complex information directing attention
00:07:09.419
and so what this means is basically you
00:07:11.699
might be working harder you might be
00:07:13.620
putting more effort towards directing
00:07:15.180
your attention but you have a little bit
00:07:17.460
less to show for it which adds barriers
00:07:20.039
to things like task switching which is
00:07:21.599
something that we encounter a lot in our
00:07:23.160
day-to-day work
00:07:24.360
as Engineers but the good news is since
00:07:27.300
we're not getting eaten by tigers in our
00:07:29.099
workplace
00:07:30.120
stress impacts are heavily influenced by
00:07:33.360
our perception of the stressful event or
00:07:36.060
environment so there's actually a fair
00:07:37.680
amount that we can do
00:07:39.300
to kind of mitigate the impact of some
00:07:42.360
of these stresses that might pop up
00:07:44.699
so some of the sources of stress that we
00:07:46.919
might actually like encounter in our
00:07:48.900
workplace environment are things like
00:07:51.000
imposter syndrome communication
00:07:53.160
breakdowns and just kind of feeling
00:07:55.520
overwhelmed by some facet of our work
00:07:58.500
that we're doing
00:07:59.759
especially as movies
00:08:02.520
so some of the critical components of
00:08:05.099
imposter syndrome are not really being
00:08:08.039
able to recognize your achievements as
00:08:09.780
achievements that you did versus like
00:08:11.699
something that just kind of happened to
00:08:13.440
you
00:08:14.160
so one of the easiest wins in terms of
00:08:16.979
mitigating imposter syndrome is just
00:08:19.560
recognizing accomplishments so that
00:08:22.560
might mean just having a more clear
00:08:25.080
definition of what success looks like so
00:08:27.539
coming from Mostly an education
00:08:29.039
background I'm used to like grades being
00:08:31.259
the metric of success and so for me one
00:08:33.779
of the rough transitions into the
00:08:35.700
workforce was I'm not necessarily
00:08:37.800
getting a grade like how do I know that
00:08:40.500
I'm doing a good job and I'm doing what
00:08:42.120
I need to do and so one of my mentors at
00:08:45.600
my current job
00:08:46.980
put it in a very nice and concise way
00:08:49.980
and basically success is valuing
00:08:52.260
delivery to our about delivering value
00:08:54.300
to our customers so making our product
00:08:57.120
easier to use making them more satisfied
00:08:59.519
while they're using it implementing
00:09:01.320
building and implementing features that
00:09:02.940
they actually need that make their life
00:09:05.399
and scheduling and managing payroll
00:09:07.200
easier that's a win that's what success
00:09:09.720
looks like not necessarily delivering
00:09:11.700
the absolute most perfect product or
00:09:14.519
like an amazing iteration as the very
00:09:16.800
first version there's a little bit more
00:09:18.660
fluidity there
00:09:20.760
um and one of the things that my
00:09:22.740
workplace culture does is we shout out
00:09:24.420
accomplishments fairly frequently
00:09:26.700
um just recognizing what sorts of
00:09:28.260
contributions people are making to the
00:09:30.360
team or to projects whether they're
00:09:32.040
helping
00:09:32.940
being especially helpful with code
00:09:34.500
review or they've just shipped a really
00:09:37.019
exciting new feature
00:09:39.240
um and then also just giving feedback
00:09:41.040
letting people know what they're doing
00:09:43.200
well where they can improve on so you're
00:09:45.060
not as much in your own head of trying
00:09:46.980
to judge how am I doing a good job like
00:09:49.080
you have a little bit more external
00:09:50.519
feedback
00:09:52.740
um some other facets that you can kind
00:09:55.920
of bring to mitigating some of this
00:09:57.360
imposter syndrome stress in your
00:09:58.800
workplace is just doing as much as you
00:10:01.920
can to help set up your new hires to
00:10:04.620
succeed so making sure that they're
00:10:06.839
supporting resources if there's anything
00:10:08.640
that's particularly unique about your
00:10:11.339
code base
00:10:13.140
um having some sort of like mentorship
00:10:15.240
relationship set up so having a more
00:10:18.420
experienced buddy to ask questions
00:10:20.760
outlining very clear expectations of
00:10:22.980
exactly what you expect to be done
00:10:24.660
because everyone's coming in from a
00:10:26.519
different background
00:10:27.959
um in an ideal scenario obviously
00:10:30.839
um with a more diverse workplace but
00:10:32.399
everyone's coming in with a different
00:10:33.839
background so everyone might have
00:10:35.640
different levels of what they internally
00:10:39.360
think is doing a good job versus what
00:10:42.600
the kind of the workplace culture of
00:10:44.040
doing a good job is I know me personally
00:10:46.260
I tend to set the bar very high for
00:10:48.360
myself and then sometimes I'm I'm
00:10:51.360
stressing and then I actually get a
00:10:54.120
chance to speak with one of my more
00:10:55.620
experienced co-workers they're like yeah
00:10:57.420
when I first started like I didn't nail
00:10:59.100
this concept until probably a couple
00:11:01.920
months in a year and I didn't really
00:11:03.720
start feeling comfortable until you know
00:11:06.300
a year year and a half and so you're
00:11:07.980
actually doing fine
00:11:10.560
um and then also ramp up tasks so not
00:11:13.500
always tossing people completely in the
00:11:15.540
deep end kind of incrementally stepping
00:11:18.540
people up and giving them tasks that you
00:11:21.779
know start smaller and are but still are
00:11:24.120
just like a little bit outside of their
00:11:26.579
current experience just to give them
00:11:28.079
some space to grow
00:11:30.240
um and then team culture wise
00:11:33.060
um just having diverse perspectives on
00:11:35.220
your team that's a really big win
00:11:38.220
um just because if you know not everyone
00:11:41.100
is thinking the same way then there's a
00:11:43.320
little bit more space to kind of
00:11:45.839
feel out okay is this like a different
00:11:47.700
way of thinking or am I going about this
00:11:49.500
the wrong way
00:11:51.240
um and also just having some more
00:11:53.579
frequent checkpoints opportunities for
00:11:55.800
feedback and opportunities for
00:11:57.660
collaboration also just being able to
00:11:59.459
see how other people work
00:12:04.500
next up we're going to talk about
00:12:06.300
patterns and this one is super fun
00:12:08.940
um I have a little a little game that
00:12:10.920
we're gonna play so let's see
00:12:15.000
got a little bit of a pattern matching
00:12:17.160
game so we have a dark gray fish
00:12:21.480
a white fish
00:12:23.160
a green fish
00:12:25.380
next up do we think it's going to be a
00:12:28.079
purple fish or a whale and we can do
00:12:30.959
what reactions do we have we could do a
00:12:34.140
sparkly heart for the fish and then a
00:12:36.300
celebrate for the whale
00:12:38.880
just a little bit of a
00:12:41.880
fun full time I'm seeing a lot of
00:12:43.860
sparkly Hearts amazing yes we are all so
00:12:47.700
so smart
00:12:49.079
it's a fish
00:12:50.579
that it's pretty straightforward right
00:12:52.440
we've got a whole bunch of fish the next
00:12:55.200
one's probably a fish
00:12:58.019
all right so our next one is a little
00:13:00.720
bit more challenging we have
00:13:04.200
a penguin
00:13:05.519
a platypus
00:13:07.079
a peacock
00:13:09.120
next up a duck or polar bear and we can
00:13:13.320
do sparkly heart for polar bear and the
00:13:16.139
celebration for the duck
00:13:22.380
okay I'm seeing a little bit of a mix so
00:13:25.260
does they want to jump in either like
00:13:27.060
verbally or in the chat if you chose the
00:13:30.420
like why you chose your your choice
00:13:34.380
yeah a lot of them have beaks
00:13:36.959
polar bear starts with a P starts with a
00:13:39.120
P they lay eggs
00:13:42.300
I think I think platypus yeah eggs
00:13:45.779
all right cool so yes there's very
00:13:48.899
justifiable reasons why it could be
00:13:51.240
either choice
00:13:53.160
so in this case
00:13:55.320
it's the polar bear because our pattern
00:13:57.120
is animals that start with the letter p
00:13:59.820
so this kind of highlights what I feel
00:14:03.660
like we encounter a lot of times when
00:14:05.700
we're working at a code base and we're
00:14:07.260
super new and there we're sure there's a
00:14:10.260
pattern there's definitely a pattern
00:14:12.060
connecting all of these pieces but it's
00:14:14.399
a little bit hard to really abstract
00:14:17.220
what that example is without being
00:14:19.800
explicitly told what it is
00:14:22.320
and so polar bear patterns are not
00:14:24.720
inherently bad like sometimes there is
00:14:27.060
very much a reason for them
00:14:29.399
but it's not as immediately obvious so
00:14:32.639
this is a sort of area where it's really
00:14:34.740
helpful to have
00:14:37.079
a some sort of like newbie crash course
00:14:41.639
or some supporting resources that really
00:14:44.880
help you clarify like this is this is
00:14:48.000
what the pattern is
00:14:49.980
um because you know we're all pretty
00:14:51.240
smart we can usually like figure figure
00:14:53.100
things out we can see some sort of
00:14:55.320
pattern
00:14:56.399
um but making sure that you're seeing
00:14:57.959
the pattern that's intended
00:15:01.380
um
00:15:02.459
um so let's see here we go some ways
00:15:05.279
that you can actually bring better
00:15:07.260
patterns into practice in your workplace
00:15:09.779
so PR bodies are a really helpful way to
00:15:14.820
accomplish this so I'm sure we all use
00:15:16.980
GitHub as our predominant um
00:15:20.760
revision history
00:15:23.160
software version history management
00:15:25.380
system
00:15:27.300
um and so PR bodies are really
00:15:30.959
are a really great place to kind of
00:15:32.760
document what this change is why it's
00:15:35.579
happening
00:15:37.199
um
00:15:38.100
what it's related to kind of what the
00:15:40.320
intentions are
00:15:42.240
um something that my co-workers and I
00:15:44.100
have started doing that's very helpful
00:15:45.540
is if there's some sort of reason why
00:15:48.540
we're doing something weird something
00:15:50.459
more Polar Polar Bear pattern e we'll
00:15:54.060
leave a comment
00:15:55.440
um in the pr itself with any sort of
00:15:58.920
supporting resources so for example
00:16:01.440
right now we're working on building a
00:16:02.940
payroll product notcha files are one of
00:16:05.940
the file types we need to export in
00:16:07.920
order to get people paid
00:16:09.540
and it took a little bit of digging to
00:16:12.000
figure out what sort of file extension
00:16:14.519
these files are actually supposed to
00:16:16.199
have so that was something that I left
00:16:18.000
in a comment so when you're using the
00:16:19.980
get blame extension on vs code or
00:16:22.560
whatever your like coding environment of
00:16:25.260
choices
00:16:26.940
um
00:16:27.540
you can see okay when you go back to
00:16:30.480
this PR you'll be able to see this is
00:16:32.880
why we chose the file extension that we
00:16:34.920
did
00:16:36.360
um and just something that I've started
00:16:38.459
doing a kind of a PR body format that
00:16:41.100
I've decided that I'm a fan of is like a
00:16:44.220
super short blurb about what the
00:16:45.779
intended purpose is
00:16:47.339
a link to any sort of documents about
00:16:50.399
what the project is so we use the shape
00:16:53.220
cycle at Workforce so we have basically
00:16:56.100
like a series of projects that are
00:16:58.079
pitched throughout six intended to be
00:17:00.600
done in like six to eight week chunks
00:17:03.360
um and so this for me is just a link to
00:17:06.179
like what the original project specs
00:17:08.520
were and then a little section for
00:17:11.220
follow-up steps and related PRS it's not
00:17:13.679
just in one place you can kind of see
00:17:16.439
everything that's related to this
00:17:19.799
um split out into smaller sections
00:17:21.720
they're all part of the same cohesive
00:17:23.100
whole but you can see all of them in one
00:17:26.699
place without having to do any sort of
00:17:29.160
major scavenger hunting
00:17:31.620
also you know documentation is the
00:17:34.080
number one complaint it's a loved and
00:17:35.400
hated resource so anything we can do to
00:17:37.140
make it better
00:17:38.280
is awesome
00:17:40.440
so
00:17:42.299
other things we can do
00:17:44.640
tests are actually really helpful not
00:17:46.980
just in knowing if you're breaking stuff
00:17:48.660
but also providing some insight into the
00:17:51.000
intended Behavior
00:17:53.280
um and so that's probably in my my
00:17:56.460
workplace the main way that we use tests
00:17:58.440
is you know just a very quick litmus
00:18:00.240
test of am I breaking any sort of major
00:18:02.220
intended functionality
00:18:06.360
yeah I don't know if you've ever tried
00:18:08.400
to look up the documentation for uh
00:18:11.400
turbo
00:18:12.799
Turbo or stimulus but uh it's a little
00:18:16.200
bit lacking
00:18:18.120
um
00:18:19.080
and but as it gets better you know I'm
00:18:21.780
I'm sure feelings on that one will
00:18:24.179
change at least in my in my sense but
00:18:26.940
yeah tests are super are super useful
00:18:31.380
um and then also linters are super
00:18:34.260
helpful just for keeping some of making
00:18:37.320
things more readable so that's another
00:18:40.919
facet of
00:18:43.820
yeah so PR bodies
00:18:46.799
um so when you have a project on
00:18:50.100
GitHub or like an organization and you
00:18:53.160
have especially if you're working in
00:18:54.600
like a larger organization so it's less
00:18:57.419
comes up in personal projects where
00:18:59.700
you're maybe one of one or two people
00:19:01.260
working on it
00:19:02.580
but basically it's um a document that if
00:19:06.840
you have some sort of process for
00:19:08.640
managing like no one yeah so if there's
00:19:12.780
um
00:19:13.500
like a project where
00:19:16.140
you have to basically get a green light
00:19:18.360
to be able to merge into Master you
00:19:19.919
can't just kind of do it whenever
00:19:22.679
um GitHub basically it's kind of it's
00:19:24.360
kind of like this template document
00:19:26.940
um that when you create a new branch and
00:19:29.400
you push it to the remote repository it
00:19:31.919
pops the first time you push it you can
00:19:33.660
open up one of these little template
00:19:35.880
things where you can add some additional
00:19:38.340
information about what the changes a
00:19:40.679
little bit of additional context
00:19:43.200
um before you merge it merge it in so
00:19:47.160
it's kind of a little bit of a
00:19:49.799
process I can also send a like add some
00:19:53.340
links into the presentation I'll share
00:19:55.980
it out
00:19:57.480
um just with some additional like they
00:19:59.340
have like a whole little help guide for
00:20:00.780
like what a PR is what its intended
00:20:02.820
purpose is
00:20:03.960
that I can shout share out later but um
00:20:07.980
very big fan of like PR bodies they're
00:20:10.559
very helpful
00:20:11.880
um just for organizing what is going on
00:20:14.520
and what these changes are are that are
00:20:16.740
happening
00:20:17.880
cylinders super helpful keeping things
00:20:20.280
repeatable
00:20:22.260
um we use sorbet type checking as part
00:20:25.200
of our
00:20:26.640
code Library which is really helpful
00:20:29.820
because it helps you know exactly what
00:20:32.100
data type you're putting in and what
00:20:33.539
data type you're expecting to get out of
00:20:35.580
a
00:20:36.660
function or whatever something that's
00:20:40.260
also super helpful is namespacing that
00:20:42.960
namespacing is
00:20:45.419
my new best friend just to kind of help
00:20:48.600
keep things organized of what
00:20:50.760
conceptually belongs with what so in my
00:20:54.539
workplace we're an international
00:20:55.380
organization so we have some things that
00:20:57.840
are associated with the Australian part
00:21:00.900
of the product
00:21:02.039
you know some things that are associated
00:21:03.900
with the US portion of the product and
00:21:05.820
so namespacing is one of the main ways
00:21:07.500
that we're partitioning those out
00:21:08.960
especially as we're working towards you
00:21:12.240
know getting payroll working in all 50
00:21:14.940
states
00:21:16.380
um just to be able to keep things more
00:21:18.660
organized also it's really simple well
00:21:21.900
it's surprisingly complex and it's
00:21:24.419
surprising how often this can get kind
00:21:27.240
of like pushed to the bottom of the
00:21:29.700
hierarchy in terms of like maintaining
00:21:32.100
code maintenance things but just keeping
00:21:34.740
your file structure organized so not
00:21:37.500
just having everything in one Mega
00:21:39.600
folder but keeping things organized
00:21:42.780
finding a nice balance between not
00:21:45.419
having like just file file file file
00:21:47.640
file and having to click a bazillion
00:21:49.440
times to get to things but having things
00:21:51.360
conceptually grouped
00:21:53.760
um kind of similar to
00:21:55.919
Ruby's um
00:21:57.780
convention over configuration mindset of
00:22:01.799
you know controllers do do this models
00:22:05.100
do this similar sort of thing
00:22:08.580
and I'm just going to take one second to
00:22:11.760
catch up on the chat for just a second
00:22:18.120
cool cool
00:22:21.419
yep all right so final thing thank you
00:22:25.500
everyone for your patience is Teamwork
00:22:27.960
Makes the teamwork so
00:22:31.740
literally everyone independent of what
00:22:35.280
level they're at from Junior to senior
00:22:38.159
said something about coding along with a
00:22:40.679
more experienced buddy as their favorite
00:22:43.340
resource for getting oriented for
00:22:46.980
feeling more confident in what they're
00:22:49.919
doing and just that's their favorite
00:22:52.200
learning tool was coding with a more
00:22:54.539
experienced buddy
00:22:57.600
so
00:22:59.700
even though this is another thing that
00:23:01.440
kind of sometimes gets a little bit
00:23:02.940
pushed to the Wayside it's something
00:23:04.799
that has incredible value for the team
00:23:06.960
even though it does have a little bit of
00:23:08.640
an upfront cost in terms of time
00:23:11.520
so it helps everyone grow first of all
00:23:14.580
both the person who's learning and the
00:23:17.400
person who's teaching
00:23:19.799
it also is a really great way of
00:23:22.919
catching some of those polar bear
00:23:24.419
patterns
00:23:25.620
um just because when you're working by
00:23:27.120
yourself a little bit more independently
00:23:28.740
in a vacuum everything makes sense to
00:23:30.600
you
00:23:31.799
um but making sure that it also makes
00:23:33.659
sense to your teammates especially your
00:23:35.760
teammates who are newer and have a
00:23:38.100
little bit less background experience in
00:23:40.799
some of the quirks and conventions of
00:23:42.539
your of your product or your code base
00:23:44.640
is really helpful there's been a handful
00:23:47.880
of times where I've been collaborating
00:23:49.679
with one of my more senior engineer work
00:23:53.580
Pals and they've been like yeah I don't
00:23:56.640
know why we did it that way this is the
00:23:58.919
pattern this is what we're doing I don't
00:24:01.080
know why we made those choices though
00:24:02.580
I'm sorry
00:24:05.039
um and then also just as a more Global
00:24:09.179
thing everyone has something to offer
00:24:10.799
everyone has different strengths and
00:24:12.960
weaknesses and more diverse perspectives
00:24:15.360
make a stronger product like
00:24:18.860
999 times out of a thousand
00:24:22.559
um
00:24:23.520
just because you're not having any sort
00:24:27.059
of large blind spots in your product or
00:24:29.580
the way it works
00:24:31.860
um and it also kind of helps kick
00:24:34.440
imposter syndrome out the door and
00:24:36.720
reduces stress and overwhelm because you
00:24:38.940
have a lot of different people
00:24:40.919
weighing in and bringing their unique
00:24:43.080
background experiences to the table and
00:24:45.840
so
00:24:46.740
um yeah and I think also sometimes as
00:24:51.539
it's good to remember that diversity is
00:24:53.460
multifaceted so it's you know sometimes
00:24:56.280
you know like obviously like gender
00:24:58.140
diversity is great no one wants to be
00:25:00.179
working with just like a room full of
00:25:01.559
like only dudes
00:25:03.000
all of the time
00:25:04.620
but there's also diversity in just
00:25:06.480
background and experience so someone
00:25:09.299
who's you know an early 20 something is
00:25:11.760
going to have a different experience
00:25:12.960
than someone who's like 40 or 50 someone
00:25:16.200
who's coming from a traditional computer
00:25:18.720
science like four-year degree or
00:25:20.580
master's degree program is going to have
00:25:22.200
a different experience than someone who
00:25:24.120
came through a boot camp program so all
00:25:26.940
of those sorts of
00:25:29.539
backgrounds differences are great and
00:25:33.059
amazing and wonderful and really make
00:25:36.360
sure that you're helping make sure that
00:25:38.460
you're covering all of your bases and
00:25:40.320
you're making code that is not only
00:25:42.960
quality but is also readable for a
00:25:45.539
diverse group because
00:25:47.700
um you know there's always going to be
00:25:49.980
new people coming in and learning what
00:25:52.140
you're about
00:25:53.159
foreign
00:25:55.580
that you can facilitate this in the
00:25:58.500
workplace and you can bring these sorts
00:26:00.059
of practices into your team
00:26:01.980
are having an assigned buddy or a
00:26:04.500
project point of contact basically
00:26:06.539
someone to bother with all of your silly
00:26:10.140
or not so silly questions
00:26:12.659
um just so that you you know who you
00:26:14.580
know could go to you know who probably
00:26:16.200
has the answers
00:26:18.980
and
00:26:20.760
also having semi-regular check-in
00:26:23.279
meetings is great especially if you're
00:26:25.860
working with newbies that might be on
00:26:27.900
the more shy end of the spectrum it
00:26:30.059
might need a little bit more prompting
00:26:31.980
to let you know what's going well and
00:26:34.740
maybe what's not going well before
00:26:36.840
they're too too deep into it so my team
00:26:39.600
have started doing
00:26:41.400
um check-in meetings on Mondays where we
00:26:43.500
basically go over like hey this is what
00:26:45.419
I'm working on this is where I think I
00:26:47.400
might need some help or assistance
00:26:49.860
um also just so as a team we can kind of
00:26:52.140
manage our time best and know who might
00:26:54.360
be having like a larger PR or a larger
00:26:57.419
project coming up that needs review
00:27:00.840
um versus like who might need a little
00:27:03.059
bit of help and all these sorts of
00:27:04.919
different areas that we have a heads up
00:27:07.140
about that at the beginning of the week
00:27:08.279
and we can prioritize our time as needed
00:27:11.640
um
00:27:12.360
peer programming also great
00:27:16.380
um just because you can kind of bounce
00:27:17.640
ideas off of each other it takes a
00:27:19.799
little bit more time up front sometimes
00:27:21.539
if there's like a little bit of a
00:27:24.240
mismatch in experience levels or
00:27:26.520
knowledge
00:27:27.659
but
00:27:29.100
it provides it provides us more value
00:27:32.100
than it costs and nine times out of ten
00:27:34.700
and also you can collaborate
00:27:39.960
um in the sense of like kind of doing a
00:27:42.900
little bit of training wheels action so
00:27:46.200
um especially for your newer newer
00:27:48.179
people giving them kind of a progressive
00:27:51.299
amount of autonomy so not and not
00:27:54.120
entirely you know like holding their
00:27:56.220
hand the whole entire time
00:27:59.100
um but giving these them this sort of
00:28:02.460
like ramp up in terms when you're
00:28:04.559
portioning out projects to your team
00:28:07.020
and giving them something that's just
00:28:08.880
ever so slightly more than they can chew
00:28:10.980
at the time but they have the supporting
00:28:12.539
resources to make it happen so we're
00:28:15.600
good
00:28:17.039
um also like collaborating
00:28:18.299
asynchronously
00:28:20.400
um is also great and so you can do that
00:28:22.500
in terms of code review so even if you
00:28:25.260
don't get the chance to actually be like
00:28:27.000
physically or virtually in the same room
00:28:29.279
together looking at the same thing at
00:28:30.779
the same time there's also a lot of
00:28:33.000
value in just being able to look at your
00:28:36.179
teammates work even if you don't feel
00:28:38.460
confident yourself giving them the green
00:28:40.440
light like this looks great looks like
00:28:42.000
it's not going to break anything
00:28:44.279
um
00:28:45.240
you can
00:28:47.279
still provide value just in asking
00:28:49.440
clarifying questions about why they uh
00:28:52.260
set something up a certain way and
00:28:54.779
things like that
00:28:56.640
and so yeah basically just mentorship
00:28:59.400
teammate chip collaboration it's not so
00:29:03.179
much like a cherry on top but more the
00:29:05.820
whole ice cream cone
00:29:12.779
alrighty
00:29:14.940
so
00:29:16.440
some acknowledgments
00:29:18.240
um a shout out to my friends and
00:29:19.500
colleagues at workforce.com for being
00:29:21.720
patient with all of my surveys and
00:29:23.940
questions
00:29:25.320
um railsconf 2023 through basically
00:29:27.600
giving me an excuse to pull this
00:29:29.220
presentation together
00:29:30.899
um first off
00:29:32.460
um women in non-binary rubiists for
00:29:34.559
inviting me to speak today freepik.com
00:29:37.140
for all the domain images and all of you
00:29:39.539
for participating and being receptive so
00:29:45.419
any and then I've also got all the
00:29:47.940
Articles Linked In but any questions
00:29:52.140
any comments
00:29:55.080
constructive criticism and feedback I
00:29:58.080
really enjoyed