visit
Ex-Google Tech Lead walks you through the career paths for software engineers and computer science majors.
๐ Party up:
Disclosure: Some links are affiliate links to products. I may receive a small commission for purchases made through these links.
Note: This transcript is auto-generated by YouTube and may not be completely accurate.
00:00
hey Tech later and welcome back to
00:01
another episode of the tech lead it is
00:03
tea time with your host the tech lead
00:05
the tech lead now as an ex-googler at
00:09
lead I wanted to talk to you about the
00:11
potential career paths that you can be
00:13
taking as a software engineer you know
00:15
I've seen some people going around
00:16
learning machine learning and JavaScript
00:19
and just so you know that's just a
00:20
combination that is unheard of in tech
00:22
there is no role for something like that
00:24
you generally aren't running machine
00:26
learning in JavaScript on client-side
00:28
web browsers so I would encourage you
00:31
that if you really want to fast track
00:33
your career that you sign up for my
00:34
program daily interview procom so then
00:37
the interview Pro is a website in which
00:40
I will send you a free whiteboard an
00:42
interview question every day check it
00:43
out daily interview procom so what we're
00:46
going to do here today is we're going to
00:47
cover some of the top career paths and
00:50
also go over why some of these may not
00:52
actually be good choices for you some of
00:54
these are really only for senior people
00:56
and you need to start building your base
00:57
off of something simpler for entry-level
00:59
people there are certain career paths
01:02
that are far simpler to get into than
01:04
others you know if we take a look at the
01:06
beginning when you start off most
01:08
computer science students and even if
01:10
you didn't go through a computer science
01:11
school a lot of people start off
01:12
learning say Java or C C++ and this gets
01:16
you a standard role as a back-end web
01:18
engineer say another problem is if all
01:20
you know is Java or C then that really
01:22
limits the scope of work that you can do
01:24
and you'll be competing with everybody
01:26
for a few Java based on webpack and
01:29
engineer roles the fact is that most
01:31
companies are not running their backends
01:33
in Java these days a lot of companies
01:35
may be running Python or PHP on their
01:37
backends you know we're talking about
01:38
YouTube Instagram Pinterest uber and
01:41
more so that's our first role here web
01:43
back in engineer and this one of the
01:45
most common types and there's a pretty
01:47
good decent road to get started in it's
01:49
very traditional and so what you really
01:51
want to do here is pick up some common
01:52
languages like say Python or PHP maybe
01:55
pick up node.js and if you know Java or
01:58
C than all the better that's just going
01:59
to make you a stronger candidate and
02:01
more fleshed out and what you want to be
02:03
focusing in on here are web projects the
02:05
REST API contract between client and
02:08
server and what that API looks like what
02:10
the inputs and outputs are are you using
02:13
protocol buffers if you're looking to be
02:15
a an engineer and then you
02:17
certainly start mixing in a little bit
02:18
of graphics development game development
02:21
that's just going to end up kind of
02:22
wasting your time you know all learning
02:24
is good is great but it's not really as
02:26
focused and going to land your job as
02:29
quickly as if you had just really
02:31
focused in on that in
02:32
engineering role now the other type of
02:34
role we have here the second one is web
02:37
front-end engineer and this is an
02:39
especially easy entry point I think if
02:42
you're just looking to land a job in
02:44
tech you pick up a web front-end
02:46
technologies we're talking about
02:48
JavaScript CSS HTML learn some new
02:51
frameworks like say angular react view
02:54
Jas and these are going to get you set
02:56
up to be a web front-end engineer and
02:58
that's really all you need you don't
02:59
really need to touch the backend code
03:00
which generally requires a little bit
03:02
more Theory on the computer science side
03:04
if you take a look at many boot camps
03:06
out there that are aimed at people who
03:08
have no programming experience you may
03:10
notice that a lot of them they kind of
03:11
train you towards being a front-end
03:13
engineer and maybe they give you a
03:15
little bit a full-stack experience as
03:16
well so you can get prepared for that
03:17
but I've seen plenty of roles and
03:19
companies startups where people really
03:22
want is somebody working on the front
03:24
end building up those user experiences
03:26
buttons UI color fonts graphics
03:28
positioning layout hooking up api's onto
03:31
the back end but the front end usually
03:33
does not do much more than simple
03:35
rendering and if all you did was know
03:37
JavaScript very well then I think that
03:40
this could be an excellent entry point
03:41
for you to start getting your foot into
03:43
the door in tech now if you were to
03:46
actually combine say some of the
03:47
back-end and front-end and learn both of
03:49
these then you would be considered a web
03:51
full stack engineer which is excellent
03:53
for a long time I have been a web full
03:55
stack engineer and then the way I still
03:57
amp
03:57
the reason full stack engineer is so
04:00
good is because web is here to stay and
04:02
especially as mobile phones have been
04:04
getting more powerful a lot of companies
04:06
they don't really see the need to create
04:08
native applications they just create a
04:09
very good responsive website and that's
04:12
really all they need and it is also
04:14
perhaps the most entrepreneurial form
04:16
right if you are able to develop an
04:18
entire website back-end through front
04:20
end that you're able to pretty much
04:21
launch your own companies so this is one
04:24
big appeal for me
04:25
I didn't really want to be just a pure
04:27
back an engineer writing a bunch of
04:29
Python scripts because that would not be
04:31
sufficient for me to be entrepreneurial
04:33
in that sense so I think that the web
04:35
full-stack engineer is an excellent goal
04:37
for many people and it's a road that is
04:40
in high demand by many startups people
04:42
who just want you to do kind of a little
04:44
of everything put a whole feature
04:45
together front end through back ends
04:47
start to finish and for this sort of
04:49
role you're going to want some of that
04:51
front-end experience like JavaScript CSS
04:53
HTML maybe angular or react and that on
04:56
the back end you're going to want to
04:57
know maybe like Python PHP Ruby on Rails
05:00
Django Java nodejs golang some backhand
05:04
language like that and if you know some
05:06
databases like my sequel and then some
05:08
Linux to just glue everything together
05:10
then that's really going to get you all
05:12
set up there and so that brings us to
05:14
our fourth category here which is mobile
05:16
engineering it turns out that mobile
05:19
engineers are one of the biggest
05:21
categories of Engineers which may come
05:23
as a surprise to some people Mobile is
05:25
big and it has surpassed desktop usage
05:28
many software engineers including myself
05:30
have built their entire careers on being
05:32
a mobile engineer iOS or Android those
05:35
are the two big ones and you can pick
05:36
one to specialize in this is also an
05:38
excellent entry point by the way if
05:40
you're trying to get into tech if all
05:43
you knew was iOS engineering and you
05:46
decided to get good at that or Android
05:48
engineering then that's pretty much all
05:50
you need for a roll you don't need
05:52
JavaScript you don't need databases or
05:54
Python all you need is to know how to
05:55
build an Android app using say
05:57
Coughlin's or Java or for iOS it would
05:59
be swift or objective-c
06:01
so this is a very clean and easy path
06:03
right because all you have to do is just
06:05
learn one single language and you're set
06:08
and the other great thing about this is
06:10
that it can actually help you be
06:12
somewhat entrepreneurial as well right
06:14
it's pretty fun to be able to put
06:15
together an entire app front through
06:17
back launch it and you can have some
06:20
results there too you could put together
06:21
a game and try your luck at the App
06:24
Store maybe it will become popular maybe
06:26
you can build a useful service or
06:28
something like Twitter and that could be
06:30
quite useful as well if you were to mix
06:32
some of that client-side code experience
06:34
with a little bit of the backend code
06:35
back in the day
06:37
to be that iOS was the far better
06:39
platform but these days
06:40
Android is big in fact Android has
06:43
surpassed iOS a long time ago you know
06:45
the number of Android users is probably
06:47
four to one or five to one maybe more
06:50
than that by now Android has been
06:52
growing very quickly and even though iOS
06:54
is very popular in the United States
06:56
Android is by far the biggest global
06:58
market share
06:59
now another career path here that we've
07:00
talked about somewhere is game
07:02
development or graphics development and
07:04
this was something that I had been doing
07:05
straight out of college and a lot of
07:08
people I would say tried to get into
07:10
game development because that's really
07:11
the first interaction people have with
07:13
computers maybe they play a computer
07:15
game when they're a kid I played one and
07:17
then I was inspired by that and I wanted
07:19
to make my own games and really get into
07:21
graphics because it's so visual but the
07:23
funny thing is that you know Fame
07:24
companies they don't build games and the
07:27
game industry if you were to get into it
07:28
it's pretty notorious for low pay and
07:30
hard working conditions and they just
07:32
don't treat you with the same level of
07:34
respect as top tier tech companies in
07:36
Silicon Valley that's why it's a little
07:38
unfortunate that companies like Google
07:39
aren't making games they're not in that
07:41
game business if they were I think game
07:43
development would be an excellent field
07:45
to get into it's so fun you and they're
07:47
often working in C++ under type
07:49
performance limitations memory
07:51
requirements and performance
07:53
requirements they have to stay at 60
07:55
frames per second and then the graphics
07:56
programming portion as well often
07:58
requires a lot of knowledge about
07:59
physics shaders GPUs a whole set of
08:02
skills over there luckily because of
08:04
virtual reality and augmented reality
08:06
starting to gain traction graphics
08:09
engineering is actually becoming a
08:11
viable field here you know it used to be
08:13
that you could only do graphics
08:14
engineering if you were building like a
08:16
game engine and that was pretty much
08:17
about it but now you know you could be
08:20
working as a Google under VR or AR next
08:22
year and hardware or maybe simply on
08:24
some camera app or on creating YouTube
08:26
video filters now another area that we
08:29
haven't talked so much about and I don't
08:30
hear that much about but it turns out is
08:32
pretty popular is data engineering now
08:36
what I did here was I went to H and
08:38
hiring me and you can do this too this
08:40
is a list of job postings from hacker
08:42
news they just scraped the whole website
08:44
and then form
08:45
nicely for you and you can see that if I
08:47
were to look up data engineer there's at
08:50
least eighty matches for this and so
08:52
that's pretty much a lot of people are
08:54
looking for data engineers here data
08:56
engineering is really about organizing
08:58
data you may have tons of data logging
09:00
coming in and then you need to build
09:02
data pipelines in which you write
09:05
scripts and say Python or something like
09:07
that and you consume a bunch of data you
09:09
write sequel queries and then you output
09:11
that into a nice pretty table that is
09:14
fast query and then like a day the
09:16
scientists make worry that and just
09:18
present some data in a nice way so
09:20
that's data engineering and then there's
09:22
a whole bunch of other specialty fields
09:23
one of which is machine learning which
09:25
seems to be all the rage now it's very
09:27
popular I would encourage you that if
09:29
you are interested in machine learning
09:31
and it is a very popular thing that you
09:33
take a look at some of the job
09:34
requirements out there I don't think
09:36
it's the easiest thing for entry-level
09:38
people to start getting into it requires
09:40
quite a bit of math and experience in
09:42
this area to really be effective at
09:44
machine learning and oftentimes it's
09:46
funny that if I were to ask a new
09:48
college grant what they're interested in
09:49
90% of them will say machine learning
09:52
the thing is we don't need 90% of people
09:54
to be machine learning engineers right
09:56
we need like maybe say 10% to be machine
09:58
learning engineers and then for the rest
10:00
you know building like say some Android
10:02
app iOS app some back-end some front-end
10:05
and that there's really a whole host of
10:07
other interesting engineering types you
10:09
have cybersecurity DevOps
10:11
right that's like site reliability
10:12
engineering and this is one thing to
10:14
think about if you dig yourself into
10:15
Linux and Perl and scripting and bash
10:18
Unix commands that's not quite the same
10:20
thing as software engineering it's
10:22
actually closer to site reliability
10:24
engineering or DevOps so just understand
10:27
that there is a distinction between the
10:28
two they're both fine careers right any
10:31
career is actually fine you can just
10:32
pick whichever one that's exciting for
10:34
you and then there's QA engineer as well
10:37
and that really has to do with the
10:38
writing test automation software and
10:40
coming up with the test Suites to test
10:42
programs and systems front to back
10:44
integration testing unit testing
10:46
automated testing all sorts of stuff
10:49
like that if that's your interest and
10:50
other more power to you as far as that
10:52
goes I know that some people they get
10:54
into QA engineer
10:56
and then they hope that from there
10:57
they'll be able to springboard into
10:59
actual software engineering which is a
11:01
path that I've seen some people do but I
11:04
would just warn you that if you do take
11:06
this route there's a chance that number
11:08
one you could be digging yourself deeper
11:10
into QA engineering and it would
11:12
probably require you to actually be good
11:14
at that job to be able to transfer out
11:16
right like you would have to have enough
11:17
sufficient passion in test automation
11:20
engineering to really be doing that for
11:22
say six months to a year and you may not
11:24
be able to transfer out it may just dig
11:26
you deeper into that area whichever path
11:29
you choose I would recommend that you be
11:31
passionate about the work that you're
11:32
doing not just so that you can be in
11:34
there for like a show amount of time and
11:36
search out because I've heard stories
11:37
about people who get trapped in these
11:39
rows and then they realize that they
11:41
didn't really want to do this from the
11:42
first place and then that's a whole
11:44
other mess yourself so overall I would
11:46
recommend that you think about the
11:47
career path that you're taking and
11:49
position yourself correctly and navigate
11:51
that focus you're learning and yeah I
11:54
mentioned this because this seems to
11:56
happen so many intents I've been
11:58
reviewing a lot of resumes and here's a
11:59
quick plug for tech interview procom
12:02
where X Facebook engineer Joma and I
12:05
ex-google engineer we prepare you for
12:08
the technical interviews and that's part
12:10
of this we've also been reviewing
12:11
resumes so check it out Tech interview
12:13
procom work when the fast track your
12:14
career I've been reviewing resumes and I
12:17
just see some people there all over the
12:19
place they seem to be doing a little bit
12:21
of everything or they maybe have been
12:23
building up a skill in something that
12:24
just doesn't seem very useful you maybe
12:26
they've been learning some thought net
12:28
Java and then a little bit of JavaScript
12:30
and HTML and when I look at that profile
12:33
set it's just not clear what type of
12:35
person this is right what is that
12:36
profile is that a back-end engineer web
12:39
front-end engineer your Java engineer it
12:41
seems like just an engineer generalist
12:43
like just a standard coder but the thing
12:45
is I think that when people say they
12:46
want a generalist engineer what they
12:48
really mean is they're looking for a
12:50
full stack web engineer who understands
12:52
a specific tech stack check out the
12:54
roles that companies are looking for
12:56
even if you're not planning to apply now
12:58
you can take a look and just prepare
13:00
your path and think about the skills
13:01
that you may need to learn and that I
13:03
can just help you focus your learning
13:05
and land a job faster so that though for
13:07
me remember to give
13:08
video alike I really appreciate that
13:10
subscribe and I will see you next time
13:12
thanks bye