Has anyone told you that you should become a data scientist?
Have you heard it's a great career?
In fact, data scientist is the best job in America according to Glassdoor's 2018 rankings.
That's great, but how do you get a career in data science?
And once you've landed that first job, how do you find the right fit?
How do you find the right company?
And how do you get more deeply involved with the community as you grow in that career?
I've brought two great guests, both highly successful data scientists,
on the show today who have been thinking deeply about this.
Jacqueline Nolas and Emily Robinson are here to give you real-world,
actionable advice on getting into this rewarding career.
This is Talk Python to Me, episode 262, recorded Wednesday, April 22nd, 2020.
Welcome to Talk Python to Me, a weekly podcast on Python, the language, the libraries, the ecosystem,
and the personalities.
This is your host, Michael Kennedy.
Follow me on Twitter where I'm @mkennedy.
Keep up with the show and listen to past episodes at talkpython.fm.
And follow the show on Twitter via at Talk Python.
This episode is sponsored by Kite and Linode.
Please check out what they're offering during their segments.
It really helps support the show.
Jacqueline, Emily, welcome to Talk Python to Me.
Thank you.
Excited to be here.
I'm excited to have you both here.
Really excited to talk about this topic.
I think one of the things that a lot of listeners out there can benefit hugely from
is how do I get started in programming?
How do I get started in data science?
How do I get started in this overall sort of Python career?
And there's so many different paths and ways you can go.
You could go get a four-year degree.
You could drop out of college and do a startup.
What is the right path?
And what is some guidance around there?
What are some of the trade-offs?
And so you both have been writing about this lately.
And this is really, really good work that you're putting out.
So I'm excited to talk to you both about that.
Great.
Yeah.
So we just published our book, Build a Career in Data Science.
We've been working on this, I think, almost two years now.
Yeah.
Two years since you reached out to me.
Yeah.
And so two years, a lot of work, a lot of talking to people in the field.
And so it's really been great to finally get it out there and talk to people and watch people
actually get help by it.
So yeah, we love talking about it.
Awesome.
Well, I'm really excited to have you all here to talk about it.
But before we get to that, let's maybe do a little bit of a meta thing.
I always ask this question on the show, but it's a bit meta this time.
It's just how did you get into programming in Python?
Emily, you want to go first?
Yeah.
I don't know if I can admit this on this podcast, but I actually don't program in Python
anymore.
I program in R day to day.
I have programmed in Python.
So how I got started was back in college.
I did Python in one computer science class, but most of the programming I did was in R in
the statistics program.
So I was lucky enough to go to Rice University when Hadley Wickham was a professor there who,
for your listeners who don't use R, is a very famous R programmers, contribute a lot of
the big packages to it.
So that's how I got started.
And I kept doing it in grad school, which I got my master's in organizational behavior.
After that, I went to a data science bootcamp called Metis, which was all in Python.
So, you know, sort of up my Python skills there and then got started working in data science
and industry.
Yeah, very cool.
Declan, how about you?
Okay.
So like Emily, most of my work is in R, although I do some Python too.
But okay.
So my background, I did an undergrad and master's in math.
And then like, I really want to help companies use math to solve problems.
This is before the term data science existed.
So I went out in industry, did some what is now data science, but I didn't know it at the
time.
Went and got a PhD because I wanted to get some more technical skills.
And then now I work as a consultant helping out companies.
Awesome.
What's your PhD in?
Industrial engineering.
Yeah.
But actually, so how I actually started using Python, I think the first Python project I
ever did was there's a style of games from like the 80s called roguelikes, where you have
like your little asterisk symbol and you're walking around like the computer screen trying
to fight monsters and stuff.
And like the monster might be the letter M.
And I wanted to make one of these.
It's like a mud, but it has like some visual representation.
Okay.
Yeah.
Awesome.
Yeah.
And so it just like, it gets weirder.
So I wanted to make one of these and I wanted to make one of like when you're on a river and
you're like tubing and you're sitting there, I want your character, your little ad symbol
to be like you floating around the river and you like see horses and stuff.
So anyways, Python was the language that had the most straightforward library for making
one of these roguelike games.
And so I spent like two weeks coding up this tubing simulator and then I got bored of the
project and left it.
But that was my first time actually using Python.
Yeah, it's cool.
And these little personal projects are super valuable for getting into programming because
you just go through and say, well, I'm learning about loops.
So I'm going to write like some different kind of loops.
Like no one learns that way, right?
Not really.
Yeah.
So that's one of the chapters in our book.
We have a whole chapter on, hey, you know, it's really good to learn things this way.
And you can actually make a portfolio of projects that you then can use to help
you get a job.
And for me, one of the, besides making tubing simulators, one of the projects I actually
did was to learn neural networks.
I generated a neural network that would create offensive license plates that would get banned
by the state of Arizona because I had a data set of all these license plates.
And that ended up being the basis for like an extremely valuable consulting project where
I ended up doing natural language processing using the same stuff I learned from that offensive
license plate thing.
That is so cool.
It's just such a fun and playful and kind of silly project.
But then, yeah, what I found really interesting in programming in general is you have these
two different realms, you know, like think hedge fund or Air Force, right?
But the fundamental thing you learn and the skills you gain to solve or work in those areas, it's
almost exactly the same.
It's just like, what layer is the specialty that they're working in?
You know, how do you work with trading?
They care maybe more about like timing versus, I don't know, visualization or whatever.
But it's blown my mind like how similar stuff is like that.
Like I created this fun thing for license plates.
And then it turns out to actually let me, I don't know what exact project you were working
on, but like something that obviously was probably not that, right?
It was a real thing someone paid me for as opposed to a license plate thing which gets me some blog post
views.
Yeah.
Just a very short side note.
Did you see that somebody thought they were going to be so, so clever and get out of all
the camera, like camera speed traps and stuff that red lights, red light cameras and whatnot.
So they got their license plate to say null, N-U-L-L.
And they thought like that would just trigger the database to think nothing was there.
But they started getting tickets for every faulty piece of data that was in.
Oh, no.
There was nobody, like there wasn't a license plate properly.
It was null.
So they started getting thousands of dollars of tickets that weren't theirs, but that was,
they're now registered for null, like across the board.
It's upstate.
I care.
Playing with fire.
Oh, that backfired bad.
Anyway, that sounds really, really fun.
So Emily, what are you doing today?
Like day to day, what do you work on?
Yeah.
So I work as a senior data scientist at Warby Parker, which makes eyeglasses and out contacts
as well.
You can get online and well, you could in previous times get in stores as well.
But that, of course, like many other companies, we've closed all our retail stores at the moment.
Yeah.
We have a Warby Parker here in Portland and I almost went in it the other day, but not anymore.
Yeah.
But still online, right?
Yeah.
Still online.
Yeah.
So I joined there in December.
So about five months ago now on the data science team, which is a centralized team that works
with departments across the company.
So that's been really fun because previously I'd always been a data scientist that was embedded
with a team.
So when I worked at Etsy, the analytics department was centralized, but we were sort of paired with
one partner team.
So I worked with search my whole time.
And then my last job, I was part of the growth team.
So I reported to the VP of growth, not to the chief data scientist.
So this has been a new experience being on a fully centralized team where for one month I
might work with finance.
And then a couple months later, I'm working with product strategy.
That sounds super fun.
And you get to experience different kinds of problems and work with different teams
and technologies, I'm sure.
Yeah, exactly.
And so, you know, and the team tackles a wide range of projects.
So one thing we discussed in our book, right, is data science is a pretty broad field.
And so there's lots of different projects you can do.
So some of ours are making like a dashboard to view analytics and some other ones may be more
modeling problems or making machine learning product.
So that's been really interesting to get this breadth of things that we can work on depending
on what the team we're working with needs.
Yeah, sounds super cool.
Jacqueline, how about you?
I'm working as an independent consultant.
So I've spent the last couple of years working, you know, as my own company.
So helping out big companies like T-Mobile, Expedia, some smaller startups in the Seattle area.
And so this is pretty fun because, you know, like Emily was saying, by being a consultant,
I got to work on all sorts of different projects, whether it's taking machine learning models
and pulling them into production or helping a company figure out who are the most like active,
engage customers and how to, you know, think about targeting them differently.
So that's pretty great.
Unfortunately, it is not like the best time to be a consultant on your own right now.
You know, it's been a little dicey lately, but all in all, I've really enjoyed getting
to work with all these big companies on all these different interesting data science problems.
Yeah, it sounds really fun.
And it is nice to be able to pick who you want to work with and what projects you want
to take.
And you have a lot, a little more freedom, I think, to kind of go your own way.
But right now, I don't know, all bets are off.
It's yeah, I think it's tricky to be a freelancer right now because you feel it, all these changes
and all these pressure, you feel it immediately.
Right.
But if you work at, I don't know, some large company, you might not feel it right away,
but then, you know, maybe that company goes under and then all of a sudden you don't have
all the connections you had as a freelancer.
Right.
Maybe Expedia dries up well because travels down, but, you know, maybe some other companies
like, hey, we got some more work.
Why don't you come work for us?
Right.
Whereas if you work at a company, you don't necessarily cultivate those connections as
much.
Yeah.
And I think a lot of people tend to like, kind of make working as a freelancer, kind of like
a, like a cool thing that like, oh, when you're really a big shot, you get to like work, you
know, just as an independent consultant.
But it's, so I think a lot of people kind of like aspire to have that sort of a job, but
it's really hard.
It's really hard because as you're saying, there's a lot of instant, you know, if there are changes
in the market, you feel it instantly.
And, you know, half of your job is going out and finding new clients.
Making deals, trying to like work with stakeholders.
None of that has to do with programming or technical stuff, right?
You've got a, you're almost in marketing for yourself as a bit.
Right.
So like people think, oh, I want to be a freelancer.
So I don't have to do all the boring stuff.
I can just do the data science.
And it's like, no, you actually have to do more of the boring stuff.
So it's, we actually, we have a chapter in our book about, okay, what do you do once you
become like a senior data scientist and you're looking at the next steps.
And one of the paths we've discussed is the consultant path, which has some perks to it, but also
have some serious risks and downsides.
Yeah.
I also have to share.
So how we split writing the book was we each like, were the primary writer for half the
chapters and the other person edited it.
And so Jacqueline was writing this chapter she was just talking about.
And the first version of the independent consultant one was so negative.
Like she was basically like, never do this.
I'm like, Jacqueline, I think we need to like pull back a little bit.
Like, I understand.
You definitely want to share the cons.
Well, it's not that, yeah, it's not that I think consulting is a bad thing to do.
It's that I've had so many people come up to me and be like, oh, that sounds so cool.
I want to do that.
How do I do that?
And I feel like I'm the, like the old woman in front of the cave, like, you know, I think
I've even came a little too hard, but yeah.
Careful what you wish for.
You might get it.
How funny.
Yeah, it's, it definitely has this aura of like, hey, you're your own boss.
You can just do whatever.
But yeah, there's, there's a lot of work to be done there.
And I think it also makes sense at different stages in your career, for sure.
Let's start this whole conversation off with a question about how you both got your first
job.
So I heard about what you're doing now.
And I have this theory.
I've only really tested it.
I guess I've tested with a few people.
I was going to say, I really only tested with myself because I only know my career that
well, but I've, I work with some people who are interns and then found their way through
like really successful stuff and sort of saw that as well.
And my theory is in the developer data science space, the first job is the hardest.
Because once you've had one job, you have a portfolio of work, you have experience, you
can say, I've done this thing and you have a problem similar to like, here, I've done this
thing with license plates.
It's technically not license plates, but that's basically what you're asking to do.
So it's not a matter of convincing a person in an interview who can do it because you
can just show them, look, this is what I built and they're happy.
But in the very beginning, it's such an unknown people.
So I think getting that first job is probably like one of the biggest steps to kind of going
down this path.
So I wanted to ask you too, how'd you get your first jobs?
Emily, you want to go first?
Yeah.
So I mentioned my first job was Etsy.
And so, all right.
So it's like take a time machine back to fall 2016.
So I finished the Metis Data Science Bootcamp.
But I interviewed.
So like one thing they did was there was a demo day for your final project and there were
some companies hiring there.
But yeah, I ended up at Etsy.
And actually how I got that initial, I don't know if it would have happened anyway, but what
helped initially was I actually knew someone, Hillary Parker, used to work there as a data
analyst.
And she had since left, but she still knew people who worked there.
So she offered to introduce me to a manager there.
And he took a look at my profile and said, yeah, I can refer you.
So definitely a network is a big part of it, even for later jobs, although I definitely agree
the first, the hardest.
And then I think what helped there was like Etsy was a really great company.
I really enjoyed working there.
And the title at the time I had was data analyst.
It wasn't data scientist.
And now actually that team since then, shortly after I left, their titles are now data scientists.
But one thing we talk about in the book is avoiding this.
People can get very attached to the title data scientists, and those can sometimes be harder
to get, or they're very attached to like, oh, I need to go work at like Google or Facebook
or Airbnb, right?
Like this.
I would say like Etsy probably falls under there, but like, you know, very well known like data
science company.
And I do think like you are going to get such valuable experience from almost like any
job.
If you're working in like data and whether you're called data, data analyst or, you know,
research analyst or product analyst, like if you're doing code, if you're working with data,
if you're working with stakeholders, it's that can be a really great first experience.
And like you said, just having that on your resume can open up a lot more doors.
And it's very common, especially in the tech field for people to switch jobs every, you
know, one to three years.
So it's not like you're signing up there forever.
That's how I got my first job.
Yeah, cool.
And one of the things I want to talk to you all about is the trade-offs of different types
of companies to work at, but we'll get to that.
I do think this idea of having someone to introduce you or someone who knows you or someone who knows
someone, you know, like a couple of layers removed is really valuable.
When I was working at companies where we were doing a lot more hiring, it was,
does anybody know somebody who can do this and they can recommend who's good?
If the answer was no, then maybe it becomes a job search.
Then maybe it becomes a job posting.
But it was not first a job posting.
It was first, anybody knows somebody great that can do this that we're in need of.
And if somebody knew somebody, then we probably just would go out and talk to them, you know,
first.
And I don't know if that's fair or not, but that's just, it's how it works.
Because if you put a job posting out there, you could get a thousand, not a thousand,
a hundred applicants.
You've got to go through.
And, you know, I've had plenty of people I've interviewed where it's like, I can do this
thing.
Like, okay, how about this?
How about we turn on screen sharing?
And what was it at the time?
It was like, go to a meeting or something.
I turn on screen sharing.
And why don't you just write a real simple program that does that?
It should be like five lines of code.
Anyone could do it.
Who's like, couldn't do it.
You're like, okay, you clearly have not been doing this for two years because this
would be like the first week of a class that covered this topic.
So, you know, it's just, it's really tricky.
So I do think, you know, just people out there listening, like cultivate those connections
as much as possible, even if it's not, it's not a perfect meritocracy, but that's just the
way it is.
Right.
Yeah.
And I mean, I think there's lots of advantages to a network beyond like helping get a job.
It's like finding a community of other people who are having like, maybe if you're the only
data scientist at a company.
And like you said, I mean, it's partly when you sort of said like, maybe not thousands.
I mean, certainly the large companies get like thousands or tens of thousands of applications
for a data science position.
I remember Angela Bassa, who's one of our interviewees in the book, she posted, I'm not
sure it was data science, maybe it was a data analyst position at our company.
And she actually closed it after four days because they'd gotten a thousand applications.
I've got a backlog.
We're just going to have to go through this.
Yeah.
This portion of talk Python to me is brought to you by Kite, the smart AI powered autocomplete
for your editor.
As developers, our choice of editor is central to our work.
The more powerful and effective that that editor is, the more effective that you are.
That's why I'm excited about Kite.
Kite is a free plugin for your code editor that gives you ML powered autocompletions and
documentation.
Chances are it works with your editor of choice.
Even if that editor has existing autocomplete features, the list includes PyCharm, VS Code,
Atom, Sublime, Vim, and more.
And Kite runs locally.
So your code is private with no cloud or internet connection necessary.
And the Kite is 100% free.
So try it today at talkpython.fm/Kite.
Kite, K-I-T-E.
And CL Kite can help you be more effective with your Python code.
Declan, how'd you get your first job?
Okay.
So first off, I feel old because I was like, oh, in 2016.
So my story starts in 2008.
So I was finishing my master's in math.
And so, you know, because it was much earlier in this whole field.
Again, data science wasn't really a term yet.
So it was much harder to just like, you know, I remember going to like monster.com and searching
mathematician and getting just lots of math jobs.
I'm like, I don't, that's not what I want.
Like I don't want to be an actuary and I don't want to teach math.
So what do I, what can I do?
Yeah, I had no idea.
Well, and I knew there were jobs out there.
I just didn't know how to find them.
And one of my very good friends had just started the year before working at a company.
And he's like, oh, you know, we actually have a department that hires people with math degrees.
You should apply.
And so I applied and the interview process was like a two-day thing where they bring you on
site and they do a bunch of interviews.
And so at that point in my, by my master's, I had some internships.
I had some research projects.
So to your point of like, it's hard when you haven't had a first job before.
I think you can have things like internships or like, you know, that license plate or,
you know, any like project you can hang a hat on is something you can talk about.
So I had some of that.
Yeah, that's cool.
And I do think actually now is even easier than back then with stuff like GitHub and open source.
You don't have to be, you know, employed to create a cool project that people can start
to like or share or something.
Right.
So the opportunities are certainly there.
Right.
And I think that compared to before when I was doing it, no one knew what like an analytics
person needed for skills.
Was it math?
Was it programming?
Now we've really got a much better idea of what you need to have on your resume.
And so it's like a two day thing that ended with like a night where they took us to a bowling
alley, tried to get us to drink a lot to get more excited.
I think there's a lot of ethical deviousness.
Anyway, so I am just I want to let me just like just to finish the story.
I ended up taking the job.
And the job when they talked about it during the interview process was like, oh, you're
a, you know, analytics, business analytics team member.
You're going to do forecasting.
You're going to maintain the models.
And I'm like, oh, cool.
I've worked in forecasting before.
I would love a job where I help build cool, interesting new forecasting models.
And then like on the job, it came very clear that what they actually wanted me to do is rerun
the forecast each month in SAS, copy and paste it into Excel, copy and paste the chart
from Excel into PowerPoint, and then stand in front of people and read off the numbers.
And that was like a huge shock because that is not what I wanted to do in a job.
And it basically took me a year of working there before the job became kind of what I
wanted it to be.
But also I had given up at that point and moved on to a different job.
So for the people who when you do get that first job, if it is not what you expect, that's
probably, you know, I talked to a lot of people, a lot of people we interview in our book have
the same problem when they get to their first job.
They're like, oh, my God, this is not what I was expecting at all.
And by your second job search, you have a much better understanding of really what it is
you're looking for and what actually exists in industry versus there are no jobs.
Like there's no job in industry that's just writing math theorems or whatever.
That's right.
Well, also, I think sometimes you can get into those situations because the company thinks
that's how it has to be done.
Like we've done this and we need somebody to keep doing that.
Like we only knew how to run Excel and then export this stuff and then do this weird thing
and then manually fix it up.
And then you could tell us like what the picture says.
I think that's true.
Companies naturally have a tendency to that.
And I think at the time coming out of a math master's, I'm like, oh, I want to do is create
new and exciting mathematical stuff.
So I have this like affinity for like having to change the world on my job.
Yeah.
And I think, you know, I have since then in my career done a lot of good by constantly coming
up with new forecasts and new methods of doing things.
But also it is totally fine to have a job where you spend 80% of it just pressing go again.
And then the 20% doing something interesting if you like that.
Right.
Like, so there's like, I think I kind of like held my nose up against those kinds of jobs,
but I think they're pretty good.
I've hired people on teams.
I've had a lot of people who come straight from academia have the same problem I had.
Like, oh, wow.
You want me to copy and paste each number like individually?
That could take me 10 minutes.
Like, you know.
It's got to get done.
Well, my thought was, you know, maybe the job starts out that way, but then you're like,
well, I can, I can do some program.
We actually, we don't really need to load Excel and copy and paste.
I could use something like PyOpenXL where I could actually write code that talks to the
database and then runs a report and then just puts it in there.
Right.
So you could like slowly take away these manual steps by starting to create like cool pipelines
of like processing and automation.
And they didn't ask anyone to do that because they thought that was basically impossible.
Right.
And so I feel like a lot of people can end up in these situations where there's like
one workflow that you are hired for, but you, you know, as people who can write code, we're
kind of magicians, right?
They can kind of like magic stuff into existence and you can solve some of these problems and
they would probably much rather have a single button click or something that's automatic every
day, but they just, they couldn't create it or put it in place.
Yep.
I think that's true.
And I think depending on the different size company, you may get more opportunities to
do that.
And depending on your appetite of, I want to code an interesting thing in Python to try
and automate the Excel or I'll just press Excel.
I'll hit, I'll hit go for five minutes each day.
That's fine.
Exactly.
Yeah.
I do think that's where the company culture or your manager can be important though, right?
Cause I can imagine some companies that like have a lot of bureaucracy would just be
very uncomfortable with this idea.
They're like, no, we've always done it this way.
Or maybe like companies that are like, or the government or like companies that work with
the government.
So I do think like, it's important to be, and that also kind of the reason we wrote
this book was because, you know, we felt there's a lot of technical guidance out there, but not
on these other really important skills you need.
And I do think, you know, one of those skills, if you want to change the practice of a company,
you can't necessarily just be like, you know, email it to them one day and have that be done.
You need to like, you know, talk to them, figure out their, like, you know, what kind of scares
them about this change, like do change management and other things.
And I think that's like, to not underestimate the importance of things like communication
and, and working with stakeholders when thinking of things like technological solutions, even
if to you, it may seem really obvious that like, oh, of course this is like going to be a hundred
percent better.
Yeah, absolutely.
And Jacqueline, just to make you feel better, I got my first programming job when I was in
1997 when I was working on my PhD in math.
So, you know, you can always go farther back.
All right.
Well, one of the interesting things that you discussed was that there's this term data science,
but in a sense, there's almost like three branches of data science, kind of a little bit like in
software development, you'd say, hey, I'm a programmer.
I'm like, oh, cool.
Could you build me a mobile app?
Like, no, I have no idea how to build you a mobile app.
I could build you a website.
And then someone else would go, I can't build a website, but I build a cool desktop app.
Right.
So, you know, what does that kind of partitioning look like in the data science space?
Yeah.
Who wants to jump in?
So, you know, and this is something that could be like one of the more controversial parts of
the books.
But I think like we people sort of come around to this, but how we divided it is in three areas,
which is analytics, machine learning and decision science.
And for example, one company that basically has this division and they wrote a great post on this
at Airbnb is Airbnb does analytics, machine learning, and they call it inference instead of decision
science.
But the idea behind this is analytics is basically like taking data and putting it in front of the
right people.
So just sort of showing the data that you maybe already have or going out, like maybe
going out and collecting it, but basically just, you know, maybe by making dashboards or showing
a report is just surfacing data to the right people, which is really valuable.
And then the next one, machine learning, is I think often what people think of when they
think of data science, which are things like, you know, creating the recommendation model on
amazon.com, right?
When you look at a product and it says like, you know, you may like these products or at Etsy,
we have the search ranking team, which is when you search Harry Potter, what of the 200,000
Harry Potter items do you show first, right?
And they don't pick randomly.
There's an algorithm that's based off of historical, how the items have behaved historically.
And then the final one is decision science.
So this is basically going beyond the numbers to help companies or people make decisions.
And also generally involves a lot of statistics because basically it's, we need to understand
how to quantify uncertainty.
So even though we know, for example, that, you know, the people who answered this, we
ran a survey and, you know, 80% of people said this.
Well, but we had a 50% non-response rate and maybe we know that more women than men didn't
respond.
So how do we adjust for that?
What's the uncertainty around this estimate?
Making a forecast, you know, as Jacqueline talked about, like that's decision science,
you know, there.
So those are the three main areas we have.
Right.
Our mailing list already is like skewed towards this audience.
And if we just ask the mailing list, hey, everybody, tell us what you think.
It's going to carry that bias forward or that slant forward unless we can somehow do more
to take care of it and whatnot.
Right.
Yeah, exactly.
And yeah.
Anything to add there, Jacqueline?
Yeah.
I would just say that I think a lot of people have like a preconceived notion that like one
of these types is more pure or like one of these types is like the better.
Yeah.
And I'm sure it's a real data scientist, not the ones who use Excel.
Exactly.
To get the title.
And it's like, you can see it in stacked overflow posts.
You can see it a lot in LinkedIn posts.
Like there's a lot of this idea.
Probably a lot on Reddit.
Yeah.
Oh, yeah.
Oh, God.
Yeah.
I said I was going Reddit data science, but like, yeah, there's definitely can be this
culture of like, you're not a real data scientist.
Like if you don't do machine learning.
Just real quick, I'll give you the pitch for why I think each one of these has the right
to be great and like, isn't the best one.
So, okay.
So I think the reason why people like the machine learning the best is you're like, oh, cool.
I get to use, you know, real time inferences.
I get to actually help.
So like a customer, when they go on their website, they actually, what happens to them depends
on what my algorithm did.
And like, it's pretty cool to be able to say that like, I actually improved everyone's outcome.
So my car drives down the street by itself.
Yeah.
Everyone can see that.
The decision scientist, you got to be like the company's detective, right?
Like the CEO, like, like high level people can come up to you and be like, yo, I have
this question.
Can you figure it out?
And you get to like put on your detective hat and go into data and really try and come
up with an answer.
So yeah, you get to like play detective.
And the, the kind of like analysis, the analyst role.
It's great because it's like those other two roles, your things can go terribly wrong, right?
You're, you're, you can be a detective and not find the killer.
Your machine learning model can ruin things for customers.
Like things can go catastrophically wrong.
Being an analyst, you're just here to help things.
You know, you're helping, you're keeping the company going.
It's like a more relaxed.
You're giving advice, but you're not making the decision.
Just this is what we, we found.
Yeah.
So it's like, yeah, it's like, it's helping everything run more effectively without the
like incredible amounts of stress of trying to get things right that the, you know, or trying
to build new questions, you know, research and development things that you have in the other
two fields.
So it's like more of a relaxed, but enjoyable job.
I'd also say like, so often there's so much low hanging fruit in the analytics side of
like things that companies aren't looking at that would really change their decisions if
you just surface these numbers.
And plus, like, I think sometimes people can look down and it's like, oh, that's like easy.
Like you're not using, you know, stats or machine learning.
Well, it's actually, you know, it can be really hard to like pull the right data sometimes to
understand when someone's asking you the question, like, hey, can you, oh, there was a great
tweet yesterday where someone is like, you know, stakeholder, like, can you pull this data for me?
And you're, you know, and you're like, yeah, sure.
Let me just pull from, you know, select star from ideal and pristine table that you think
somehow exists.
And there's actually a lot of work to elicit the true question they're asking.
So I'm probably underlying all of this is data wrangling.
Yeah.
I think all of the people have to do data wrangling and it's really just a skill like data wrangling.
I think trying to be able to explain what is happening in the data, like, so kind of the
input and output.
Like you really need all, you need that for all three of these jobs.
So if you don't, if you're not comfortable taking data, trying to figure out, like, you
know, put it in a way that you can then use it.
And if you, you aren't comfortable looking at some numbers and trying to say like, oh, well,
this number plus this number really means that any of these three jobs is going to be more
difficult.
Yeah.
How much does knowing how to talk to databases matter?
Like writing SQL queries or things like that?
Or can you get away without that?
It really matters.
Even so the, I see, I would say,
the SQL ideas I've seen show up in every data science job.
And I mean, I don't know.
I haven't seen every data science job, but everyone I have seen.
There's that one that only works with CSVs, but besides that one.
But even if you don't actually work directly with SQL, the idea of taking two CSVs and joining
them somehow together and then filtering out the rows, like because so much of the data
in the world is stored in a tabular format, you really have to think, like understand how
SQL and like relational databases work.
And if you don't actually know exact SQL syntax, that's fine.
Like maybe, you know, the pandas, whatever, or the RDPly or whatever.
But like the just concept of thinking through tables is like, yeah, you need it everywhere.
Yeah.
Emily, what do you think about that?
Yeah.
I would definitely say it's, it's one of the foundational skills.
And the good thing is like the basics of SQL, you can pick up pretty quickly, like just
like how to select from a table.
And then, you know, you can grow as needed, you know, maybe if the data engineer is helping
you out.
But, you know, of course, if you can't, if you can't access any data, you probably can't
do much data science.
Yeah.
That's a really good way to put it.
But also that's not a hard skill.
I mean, it's not really a hard skill to learn.
Like, yeah.
It seems weird and hard if you've never seen it, right?
Like, how do I connect to it?
This connection string is really complicated.
Yeah.
But you're right.
It's not a big deal.
It's just something you got to learn.
Now, I guess thinking of these three different types, it's one of the things that struck me
and you pointed out one, there's two things.
One was that the machine learning role is probably a little more computer science-y because you're
taking code and you're putting it into production and it's real time.
You're probably fitting in with APIs that other people are talking to and you're building stuff
that machines talk to.
Is that accurate?
What do you think?
I would say that the machine learning is more computer science-y.
Yes.
A hundred percent.
You do really need to understand things like unit testing or load testing in ways that the
decision scientists and the other roles don't necessarily need as much.
Right.
HTTP status codes and JSON and all that potentially, right?
Yeah.
The risk of the machine learning engineer is that that actually becomes the risk.
The risk is if you're not careful, your job could just become software engineering.
I know a lot of machine learning engineers who, well, their company doesn't have that much
machine learning engineering to do at the moment.
So you're just going to be a software engineer and then that's not great.
But the converse is as a decision scientist, you have much more stats and like just building
the actual like models.
But if you don't have the work to do as a decision scientist, there's not reports, you know,
not super interesting models to build and questions to answer.
You might end up just doing dashboards or something that, you know, like any of these jobs kind
of have a risk of falling into something you don't like.
It's just a question of which way does the rock fall down the mountain or whatever.
I don't know if that's a real metaphor, but.
Some mountains.
So another thought that I had while we were talking about this is different.
The people in these different groups will have massively different exposure to like the
C-suite or the decision makers of the company at a high level.
I'm thinking of a large company, like 500 people or more, not like a startup.
But, you know, the analysis person could easily get called in front, you know, for like a board
meeting to help them decide, you know, how are things are going.
Maybe the decision scientist, it's not so likely the machine learning developer is like, well,
they've decided and then they were told you're going to build this model and here's what they're
hoping for.
Right.
It's, it's a different kind of, you would still be working with a lot of technical people,
but you have like different ways to grow within the company, I guess.
Is that a good way to think of it?
Yes.
I think that is absolutely the case that if you're in this, if you're an analyst or a decision
scientist, then you are much more likely to get to go to a CEO, like go in that meeting
and show some interesting data that can prove something.
If you're a machine learning engineer, usually you are building a product, like Emily was
saying, like you're building a recommendation engine.
And then there's some product person whose job it is just to be in charge of that product
and they get to go and have to see.
You only go to the C-suite if you're going to be like raked over the coals because you
wrecked it with your machine learning.
I recommend it wrong.
But that being said, I think a lot of people who are sufficiently technical are like, oh,
I wouldn't want to do decision science.
I really want to do machine learning because I don't want to have to deal with like convincing
people.
I just want to have to deal with cool data modeling or whatever, you know, machine learning
modeling.
But it turns out that as Emily is saying, to do those jobs well, you still have to be able
to talk to the software engineers and the data scientists who built the model and the product
person who needs to know if the recommendation is going to be good enough for the customer.
Like you still have to do lots of talking to be good at it.
It's just that it is less of a core tenant than it is of perhaps some of the other roles.
Yeah.
How does this affect early stage careers?
Right.
Like I can, I can see somebody who like Emily in 2017 just came out of a bootcamp and
they said, okay, you're going to go talk to the CEO of Etsy and the board and like help
them with this product.
You'd be like, oh my goodness.
Like what have I gotten myself into?
Like that would on one hand be awesome, but also terrifying.
Do they fit better at different stages of careers or does that really matter?
I think it probably doesn't matter as much because like for a company that's big enough
for that prospect to be kind of terrifying, like if my last company was a startup, so like
I talked to the CEO all the time, but basically felt like another coworker.
So yeah, for it to matter, like you're probably going to have more senior people, right?
Who, if they are going to like have someone present to the CEO, it's probably not going
to be the person who joined two months ago.
Also, the other thing we didn't really talk about is how much you're specialized into one
of these roles does depend on the company.
So often that's like the company size and maturity of the data science team, right?
So at certain companies, you may be like fully like a machine learning engineer, but
if you're the first data scientist at a startup, you're probably doing a mix of all of these
and you wouldn't go as in depth in any one of them, right?
Like a startup probably doesn't need someone who can handle hundreds of millions of items,
like recommendation items, like Amazon would, like you don't need that compute power, but
maybe you build like a simpler recommendation model.
And then you also play detective work and you also, no one actually knows what the sales
number are.
So you like finally make a dashboard.
Right.
You probably do a lot of growth at like an early stage startup, a lot of AB testing type
of work.
Yeah, exactly.
So I don't want to make it seem like, oh, every role like falls into like one and only
one of this, because you certainly can have roles where you're, where you're putting on
multiple of these hats.
I would also say that not only depends on the company you work at, you may do multiple, but
also you can during your career change.
I didn't do any machine learning up until like two or three years ago.
And then I switched over to doing that now.
So now I kind of do both, but like lots of people switch in lots of directions between
any of these three jobs.
And that, that is the thing that it is possible to do.
Yeah.
Yeah, for sure.
Yeah.
Chapter one interview, Robert Chang is over at Airbnb is a really good case study in this.
So he started more on like the analytics side and the decision science.
I was working at Twitter.
He then started to continue that work in Airbnb.
And then he ended up switching over to do machine learning.
And he actually has blogged about this.
And like, as part of that process, like he did need to up his skills a bit.
So for example, he'd previously done most of his work in R, but the teams that do machine
learning, like a lot of the libraries were built in Python.
So he actually has a repo where he talks, where he like put his deliberate practice for Python
and how he was going to learn that over a couple months.
So he can make the switch.
That's cool.
Yeah.
You can definitely switch.
I mean, I've definitely made big switches in my career as well, from like being terrified
of the web to only working on the web and stuff like that as well.
Yeah.
And I would just add, oh, sorry.
I would just add on that.
You know, I've talked to a lot of people who have wanted to switch and had trouble because
these jobs are a resource and the company has a finite amount of them, right?
So there's some companies where they just don't have any machine learning engineering.
And so if you really just would love to do machine learning engineering, you're going to be
in trouble because there's just none of those jobs available.
Or as Emily points out, maybe they have a couple of them, but like people who are super
senior are already working on them.
And some companies, like you're a startup and like they have way too much work they
could possibly do any of it, you know, all of it.
So you can do kind of have a lot of freedom.
And so sometimes if you want to make this transition and you're finding it difficult, you need to
switch companies.
This portion of Talk Python to Me is brought to you by Linode.
Whether you're working on a personal project or managing your enterprise's infrastructure,
Linode has the pricing, support, and scale that you need to take your project to the
next level.
With 11 data centers worldwide, including their newest data center in Sydney, Australia,
enterprise-grade hardware, S3-compatible storage, and the next-generation network,
Linode delivers the performance that you expect at a price that you don't.
Get started on Linode today with a $20 credit and you get access to native SSD storage, a 40-gigabit
network, industry-leading processors, their revamped cloud manager at cloud.linode.com,
root access to your server, along with their newest API and a Python CLI.
Just visit talkpython.fm/Linode when creating a new Linode account and you'll automatically
get $20 credit for your next project.
Oh, and one last thing.
They're hiring.
Go to linode.com slash careers to find out more.
Let them know that we sent you.
Speaking of companies, in your book, you have a really interesting conversation about different
kinds of companies.
And I've been fascinated.
I've worked at almost all of these different types.
Early-stage startup, late-stage startup, probably.
Mass, quite, yeah, let's go with massive tech company.
But not a government contractor.
I've worked sort of subcontracting with them.
I've worked at most of these.
And a lot of those experiences are not really obvious if, say, you're in a boot camp and
you're just looking for a job.
You have been through the internals of these things.
So maybe you'll give us a flyover of the five different types of companies and maybe a little
bit of example about each.
What's the team like?
What's the tech like?
What are the pros and cons?
And so on.
Sure.
We realized very quickly that when we were writing our book that we needed some sort
of way to help people understand what is the actual job like.
And then we're like, well, it really is so different depending on which company you're at.
And so Emily and I kind of brainstormed five different companies we worked at.
And then we kind of came up with goofy alternative names for them.
But if you look at our LinkedIn profile, you can probably guess.
Don't give it away to Emily.
I love that you have an actual little...
custom logo for each one.
Yeah, that was all Jacqueline.
Yeah, and I thought about which fonts to use with which company.
Yeah, it was well done.
So the five companies...
So we have MTC, which MTC is like your Google, your Apple, your Microsoft, these companies,
that's just like giant tech company.
So they're rich.
They're so big that like each part of the company uses a different type of tech.
You know, so they have lots of advanced stuff.
But because they're so big, you may not actually...
Your stuff may not link up with...
You know, if you're working on Google Maps, you may have nothing to do with a Google self-driving
car sort of a thing.
The second company is Handbag Love, which is just some company that's like a retail company,
you know, like a Nordstrom, DSW, one of these companies that is big.
They've been around for a while.
They use data science, but that's not like their thing.
But they're not a tech company.
Right.
And so I really like working at those kinds of companies because you got to like go in
and really do a lot because no one's there to tell you, oh, you can't use Python.
You have to use R or whatever.
Yeah, exactly.
There's no...
Like, let me talk to other software developers.
There are no...
Yeah.
There are none.
Like, okay, well, I can just...
These are the problems.
Please solve it with technology.
These are your requirements, right?
Yeah.
There's no rules and restrictions.
And so then we have this SegMetra company, which is like some company with like a hot new
idea for a startup.
And they're...
You know, it's really just like a classic startup where it's like there's so many things
that need to be built at once that like everyone just kind of in a constant panic
attack.
You get to do whatever you want.
So it's a lot of fun and exciting.
Then there's Videory, which is like, imagine if like...
What's that company that's Vimeo?
The company that's not YouTube, right?
So like some company that's...
Yeah.
You know, it's a tech company.
It's, you know, decent size, but it's not huge.
So everyone knows each other.
Right, right.
Maybe Zoom even.
Yeah.
Like we're talking on Zoom.
Could be something like that, right?
Yeah.
And then lastly, I forget what I call it.
Some GAD.
So it's basically like some giant government compactor.
Geo Aerospace or something like that.
Something like that.
And it's basically, think of your Lockheed Martin, your Boeing.
People don't, I think when they talk about data science, they usually don't think about
these companies as often, but they have tons of people like that, especially analysts.
Like these companies run on that.
And because these kind of government contracting companies are massive, they've been around for
a long time and they really don't want to make mistakes because that can cause a lot
of damage.
It's just a lot.
Everything moves a lot slower.
There's a lot more bureaucracy.
It's more of a relaxed job than working at like a startup.
Yeah, sure.
All right.
So which one of you worked at the massive tech company equivalent?
I don't know if I should say, I consulted for a massive tech company equivalent.
I'm not asking which one, just like, but you did, Jacqueline, that was you that worked
at something like this?
I worked at something like this.
So the reason I'm asking is because I want to ask you for your take on it, right?
Like, what is the team like?
Oh.
What is the tech like?
And so on, right?
Don't name names.
Oh, no, no, no.
Okay.
Yeah.
Actually, I realized I actually consulted for a couple of them, so I'm not incriminating
anyone.
Anyway.
So when I consulted for these companies, they're like, because they're so big, they're
so big that, you know, they may have this like big onboarding process that everyone goes
through, but it has nothing to do with your actual job because the company is too big to
do that.
And then when you got on your team, it's like really specific.
I recently started working with some company like this.
They were working with the podcast, right?
They were doing some ads and stuff.
I had to go through and like sign a waiver that said nobody would climb on a ladder in a dangerous
way.
Yeah.
I'm like, it's a podcast recording.
You're going to give me audio.
Like, there's no ladders.
I don't know.
But like, this is the other one.
I see a ladder in your background.
I didn't know about that.
Yeah.
Actually, maybe this is what they're talking about.
It was like the warehouse person and the like contractor who does podcasting, whatever.
Like it didn't, you know, they wanted to run an ad.
So I had to go through this like weird process.
It was bizarre.
Yeah.
And so the cool thing about working with this company is they have tons of money and they're
really excited about technology.
So if you're like, I want to buy this expensive thing and try building a solution using that
people are generally like, sure, whatever.
It's fine.
The bad thing is this is true for everyone else as well.
So when your product A is trying to link up to product B, you may struggle a bit.
So there's just a lot of this kind of lots of tech, lots of money, high salaries, not
necessarily everything working in sync that you have to deal with.
Yeah.
You probably get to work with a ton of smart coworkers.
Yeah.
It's a bit of a bonus and a curse, right?
It's hard to stand out probably, but it's also great to have that support.
Right.
And if you're a person who really likes learning from other people and like having direct
mentorship, you are, this is one of the best companies to get that out.
Because yeah, like this company just draws people who know a lot of tech like a magnet.
Yeah.
So like one thing what we did is because, you know, it may be the case, like, you're
looking for jobs and like, you know, it's easy for you.
Like you're thinking of finding Google.
You're like, okay, that's the massive tech company.
But maybe you find a job and you're like, well, it doesn't really fit into any one of
these five things.
It's like one thing we do at the end of the chapter is we pull it together.
Okay.
Like what are some of the vectors that the companies differ on?
Right.
So mentorship, bureaucracy, like the tech stack.
So even if you find one, you know, you have a company that's not in one of these five
archetypes, you can sort of go through those things.
You say like, oh, okay, well, like it's a huge company.
So like probably there's a decent amount of bureaucracy.
I would be the first data scientist.
There's not going to be a lot of mentorship.
And so you can think about these different pieces and, you know, people have different
preferences, right?
Like some folks really, I've talked to people who really love, usually we don't, it's, I
wouldn't recommend it for someone's first job, but people who want to be the first data
scientist at the company because they want to get to build everything.
And then there's some experienced data scientists who are like, I would never want to be the first
or the only data scientist.
Like I really like working on a team.
So it's not like, you know, one of these is like, you know, oh, everyone, you know, it's
always bad to like have these certain things, but it's just different criteria that you can
think about and reflect for yourself.
Like what's important to me?
What am I looking for?
Yeah.
What's the fit?
All right.
So handbag, glove, who wants to talk about that one?
I can do that one too.
All right.
Just as I was talking about before.
So like, there's like a retailer, like let's call it like if it's, yeah, again, like Nordstrom,
Boatlocker, one of these companies that's like a retail company.
The cool thing about this is they have a very real product that they've been selling for
a long time and understand what they are doing.
So like you add a lot of stability there.
And by adding on data science, these companies are a lot like, okay, well, let's try and use
data to improve the product recommendations, improve the product, improve, improve our understanding
of things, you know, like use data to answer questions.
So you get a lot of, there's a lot you got to do as a data scientist.
You have a lot of.
Right.
They used to use intuition and now they're going to use data or something like that.
Right.
Yeah.
And so that's the upside.
So downsides are you don't have as much money.
Cause you're not like a rich tech company.
Your tech isn't as good because you know, you just don't care as much about getting the
best of the best.
Like, you know, older tech is generally fine.
And, you know, just as we were talking about, you generally have fewer people who can like
mentor you.
Like there'll be someone there, but you know, there'll be people there generally, but it
might be that everyone know, everyone's using like a far outdated Python library because
no one knows about the new way and no one's reading up on it.
So exactly.
They're still on Python too.
Something like that.
Cool.
And then early stage startup.
What's the story for data scientists there?
Yeah.
I could talk a little bit about this.
So yeah, with data scientists, like you come in and you really get to shape everything.
So like there's some negative parts.
So even beyond the data science part, right?
Like you might show up at the startup and they're like, oh, we don't have your laptop yet.
So it's sort of a funny thing is like, there's, but there's also more freedom because they
might ask you like, Hey, what kind of laptop do you want?
Like if they're like a decently well-funded startup and you can be like, oh, I want this really
souped out laptop.
You don't get that super slow clunky one with a huge company banner that takes five
minutes to start up.
Yeah, exactly.
That's a mixed bag.
But yeah, often you're like, it's talking about there's a lot of low hanging fruit.
You also have to wear, you may have to do some data engineering, right?
Like maybe there's not any data engineers and all of the databases are optimized to like,
you know, serve the website.
And so it takes you five minutes.
So like get a count of a $800,000, $800,000, $800,000 row table.
So yeah, so you have to wear a lot of different hats.
You might be pulled in a bunch of different directions.
So it's also really important to be able to prioritize, like to not just be like firefighting,
also take some time, like to, for example, build up some skills, like to build up your toolbox.
So like, okay, maybe write a library for yourself of like, that's a wrapper around pulling
the data.
So that becomes easier.
That's a really important point, because I think a lot of these, I've worked in places
like this, and it's nobody asks you to build a helper library for data access.
They help you.
They ask you, give me this answer or make this product or give me this thing.
And you're like, yeah, but we really need this thing in place.
And somebody's gonna have to build it.
It's gonna be me or the other person I'm working with.
And you just kind of have to be willing to put in that infrastructure along the way, right?
Because you're going to appreciate it later, but there's no guidance for that.
Right.
And it's definitely not in place usually.
Yeah.
And you have to like help teach people like how to ask questions, like what is possible,
like bring in best practices.
So it's like I was saying earlier, I really would not most of the time recommend this for
someone's like first data science job to do this.
But for an experienced data scientist, like I found some people who really, really love
doing this because they're like, oh, I don't have to deal with like, you know, the decisions
of past data scientists.
I get to shape this in my vision and I get to use the most modern tools, for example.
You want to use Python, you can.
You want to use R, you can.
Like no one's going to, there's no one there.
So you just, they just need answers.
Yeah.
You can use F sharp, right, Jacqueline?
Yeah.
I get a lot of, a lot of people make fun of me because my favorite programming language,
no one else in the world uses.
Well, I did see the Jupyter Notebooks now support F sharp.
So that's, that's a vote.
Be still in my heart.
That's awesome.
Yeah.
But I mean, like early stage startups.
And I would say also handbag love companies a little bit as well because they may have some
tech stack, but it might be so outdated.
They're like, you're new.
We want to like go in, we want a refreshing direction where you can go in this other way.
We're not going to make use this old thing.
We're going to try to get, you know, get something new growing here.
So you can go and have some flexibility as well, I think.
Now, what about the videory, the later stage startup?
Yeah.
For my preference, I think this is kind of a sweet spot because like you have like, you
know, it's sort of like in the, in the, in the middle of a lot of these things, right?
Like there's like some bureaucracy, but I kind of like bureaucracy sometimes.
Like HR has their stuff figured out.
Like that's nice.
It's like benefits and other things.
There actually is vacation.
Yeah, exactly.
You know, so there's usually like, there's a team of data scientists, but since it's, it's
still like a startup, you know, they weren't, you don't have like a, a, you know, 40 year
old tech stack, right?
Like most decisions were made made like five or 10 years ago.
If that.
Yeah.
So I think this can be a nice fit.
Like you can still get, you know, you can still like know everyone on the data science
team.
Like on like, if you're at like a massive tech company and have support, but also have some,
some structure in there as well.
And there's probably like data engineers and other people to help out with like data science
adjacent problems.
Yeah.
You're probably a little more locked into a tech stack.
Yes, that is true.
Yeah.
I don't think you can really like do a tech stack from start.
And so you're locked into certain decisions, you know, and, and there may be sometimes you're
like, oh, I wish I have a time machine and like could go back and like fix this decision
they made a while ago.
Right.
Like you're at an early stage startup.
You can be like, all right, we're going to start like collecting data right away.
You know, we're going to log everything.
And then if you're at like a, you know, later stage company, they're like, oh, like, why don't
we like look at the state?
And you're like, oh, actually we weren't collecting that a year ago.
And they're like, okay, but make a forecasting model anyway.
And you're like, oh no, no, no, no.
You don't understand how uncertain this answer is going to be.
Yeah.
And then I guess the last type of company archetype that you all covered was the government contractor,
the Lockheed Martins and the Hallibartons and so on.
Yeah.
And I should also mention this includes the government itself, right?
Like if you work for the Department of Transportation or something like that, or just, you know, companies
where there is for legal reasons, there is just a lot of regulation, a lot of things
like, you know, keeping things moving a little slower.
And so these kinds of jobs, they tend to, they have to tend to have lots of people who are
not data scientists.
And you tend to have the data scientists maybe embed in little groups of that.
So like in the missile department or whatever, or the, you know, truck department, I don't
know.
And so because of that, you generally, you don't have as much mentorship often, but you often
don't have as much people telling you, no, you can't do it that way.
You're wrong.
I mean, you may have it like, oh no, we don't support Python past 2.7 because our, you know,
our procurement department hasn't cleared it or whatever.
So maybe bureaucracy, but there isn't like, oh, you have to, you know, like there's, there's
just not as much of like a standardization around tech just because there's, you know, that's
not the focus of the company.
And so these kinds of jobs, I'd say are really, they're really great.
If you want a job where you go in each day, you work eight hours with a 45 minute lunch
in there, you get a little bit of stuff done, but you don't stress crazy about getting it
the most you possibly can done.
And no one's stressed about you getting exactly the most, right?
So there's not like, you know, if you're a job where you're like, I'm going to go in,
I'm going to be the 10X data scientist.
I'm going to rock, you know, my career is going to be a rocket ship up to the C-suite as fast
as I can.
Like, this is not the kind of company for you.
It's the kind of company that's for more for people who are like, I just want to do a consistently
good job.
Like then go home and take my paycheck and spend it on something I enjoy.
Yeah.
And don't need a lot of perks.
That's a good way to put it.
Yeah.
Because I've talked to people who are like, yeah, it's like, especially if you look at some of these
tech companies, right.
And like, I don't know, Airbnb and like Rose on tap or something like you, you're lucky if you get
coffee at some of the like government contractors.
Yeah.
That's for sure.
I think another thing that is interesting is so many of these types of companies are driven by like
government contracts or projects.
I'm thinking of like DARPA funding and like, here's a project that is guaranteed to run for
one year and then it may immediately get canceled no matter what.
Right.
So you have like these sort of long time horizons of working on something, but there's, it could
become a totally different type of job because some other contract was won and this one was
expired, lost, whatever.
Yeah.
And I think there's kind of, I would say not just besides government contractors, you can
imagine there are some other fields that might kind of fall into this, like certain parts
of healthcare might kind of fall into this area.
Yeah, definitely.
You imagine parts of finance, like some like, you know, rules around, you know, financial
risk regulations might kind of have some of these components too, but it's more the archetype
of the company that's got a lot of regulations or reasons why it has to move slowly and not
break things.
Yeah.
Interesting.
I think that's a really cool list you put together and I agree with a lot of your assessments
there.
So pretty neat.
Now we've been talking forever and we just barely touched on the stuff that you're covering.
We could just talk for so long because this is such a great book and a great topic,
but just for the sake of time, let's talk about one more topic and maybe blend this together.
So let's talk about getting the skills, becoming a data scientist from wherever you're starting.
And then also maybe just real quickly building a portfolio, because like I said at the beginning,
I do think having that first job is super important and getting that first job is strongly influenced
by just having something I can show.
You want me to do this?
I've already done it.
You don't have to verify if I can do it.
I look, this is it.
Just look at it.
You know, is it a personal fit or a salary fit?
Or whatever, right?
So let's start with getting the skills first.
Okay.
Yeah.
Back when you were talking about a master's.
Yeah.
And Emily, you're talking about a bootcamp.
Those sound like two different paths to me.
You didn't necessarily study programming, right?
You kind of went the math side, which actually I did as well.
Yeah.
I can cover.
Yeah.
Let me talk about all the different ways you can get skills.
And then Emily can talk a little bit about the portfolio, because that may or may not
have aligned with the chapters before.
I mean, who's to say?
I would never reveal that.
So we really, we think there's like four ways you can kind of get data science skills.
One is you can get a degree, which usually it's for people that go and get some sort of
master's degree, which is either like data science or maybe computer science or math, something
like that.
And the degree is great in that it, if you don't have that much of a background, you
will learn what you should, you will spend two years doing it.
So you should learn the basics of what you actually need, right?
The data science degree, you should learn the data science skills and you might do some projects
during it.
The downside is it takes two years and like 80 grand.
That's so much money.
Yeah.
A bootcamp takes 12 weeks and like 15 grand.
So that's much faster, much cheaper.
And the whole point of a bootcamp is to get you what you need as quickly as possible.
And I feel to me like bootcamps almost do a better job of connecting you with a job afterwards
than like a master's program.
Yeah, I think that's true.
And I think generally I would recommend bootcamps more except for people.
Bootcamps, you really need some sort of background already.
Like you need to have some idea of programming or some knowledge of this kind of field already.
If you don't know anything about data science, that might be 15 grand.
Then you still are just kind of confused.
You can, the third option is you could try and find data science work within your job.
If you're an analyst and you want to do more decision science, you can try and find
places where you can do decision science in your analyst job.
If you're a decision scientist and you want to do machine learning engineering, you can
try and find places where you can do some more engineering.
So you could kind of try and learn within whatever your job is.
What if you're a scientist who kind of does a little computation and you kind of want to
drift towards the data science side?
Yeah.
So I actually know someone who is trying, you know, doing that very thing.
She was, you know, she's a scientist.
She takes measurements and she's in her job has started to use R to actually make plots and
do the kind of investigatory stuff.
And that's totally been working for her.
And then lastly, you can teach yourself, right?
There's all these courses online.
You can work on your portfolio, which we'll get into.
And teaching yourself is great because it's free.
You have to focus on the stuff you care about.
And yeah, you can really, if you can motivate yourself correctly, you can really like learn
a lot that way.
I've learned a lot this way.
The downside is, is that it requires an immense amount of discipline, right?
If you try and do everything learning online, you have to actually do those courses instead
of playing Animal Crossing.
But yeah, not that I play Animal Crossing, but no, Jacqueline's just calling me out.
And you know, you don't know if you're teaching yourself the important things or not.
At some level, you don't have a mentor when you're teaching yourself.
And that's a problem.
Yeah.
It's also, I feel like sometimes when people are trying to teach themselves, they try to
boil the ocean, right?
Yeah.
Yes.
You know, like, well, I saw this and this and this.
So I got to know all those things.
Like, no, no, no.
You just vertical slices, not horizontal.
Yeah.
Like, figure out what you got to try to build something and learn what you need to
build that shallow or deep in these areas and then go from, like, iterate, right?
Yeah.
And I think a similar problem to that is when you're teaching yourself, there's not like
a natural stopping point.
So like in a master's or a boot camp, like they end and then you're like, oh, I guess
it's like time for you to like find a data science job versus if you're teaching yourself,
it's so easy to be like, well, I can't apply to like a data scientist yet.
I haven't learned like this thing or I haven't learned this thing.
And you just make this endless list.
Yeah.
Right.
Yeah.
Which I think is, is, you know, you're always data science is a, is a career where you're
always going to be learning.
And so it's not like you, you, it won, like no one knows everything.
So you don't have to feel like, okay, I must like master, you know, the whole world to
be able to get a data science job.
Yeah.
I hear you.
Let me put data science up a little bit on a pedestal here.
Like, so I feel like as a developer, you can build web apps, work with databases, whatever,
like you can totally do a quick bootcamp.
You can take online courses, read books, teach yourself.
I do feel like those are skills you can mostly get yourself.
They're like painful lessons you have to learn, but I'm not sure you'd learn those in school
anyway.
But with data science, I feel like there is a level of statistics and like scientific understanding
and a little bit of math that I think is a little bit harder for people to just get on
their own.
So having some formal training in the background seems more important for data science than pure
development.
I would guess I would broadly agree.
And not because the actual statistic and machine learning models you learn as a data scientist
are like somehow harder to learn than software engineering, but because the fields, those
fields are so confusing.
And like in a layout, like statistics, like what is considered statistics versus machine learning
versus industrial engineering?
Like these are all extremely poorly laid out.
The people in those fields make them as confusing as possible to make it seem like only they understand
it.
And there's not a really an easy pattern.
There's not really just like one book out there that's like, oh, this thing in statistics
is actually that thing in computer science.
And like, they're the same.
And don't worry about that half of statistics doesn't super matter.
Like that's not easy information to find.
Yeah.
I do think though, it also depends on like what type of role you want.
Right.
Like, so I think that's a little bit less important in analytics role, for example, to have like
that background.
And there is certainly like, you know, people do, you can still like learn some of this on
the job, you know, whether for like mentorship or like reading books or like other, other things.
But I agree, like there is a bit of a danger because I feel like, especially with statistics,
it's like, if you run a statistical test, like it will generally spit out an answer, but it
may not be answering what you think versus right.
Like it's a little more obvious sometimes in development work, like, oh, the website didn't
load.
So I guess I have to like figure out what we're wrong.
So there's a bit more of a danger there.
Yeah.
You're always going to get a number from that library, from those algorithms.
Right.
And you have to understand what it's doing.
That's kind of what I was saying.
Like, it's really clear if the website is letting the user log in or not.
Yeah.
There's not a huge debate.
Maybe security is not quite right.
There's details you got to get right.
But it's generally, it works or it doesn't.
Just because I'm so upset about the point I made previously, because I think the point's
right, but I'm getting upset thinking about it.
It's like, so like a linear regression or logistic regression has some built in assumptions.
If you're in a CS department and you're like, I'm going to use a linear regression
to fit this as part of a neural network.
People are like, fine.
You did that in a stats department.
They're like, how dare you?
That's so incredibly wrong.
Right.
You violated the assumptions.
And it's like, well, these are two trained academic professionals telling you two totally
different things.
And I think that is something you get all the time in data science that you don't get as
often in software engineering.
Yeah.
It's exactly that kind of stuff I was thinking of.
Yeah.
Both the two things you both mentioned.
All right.
Let's close out our conversation by talking about getting a portfolio, maybe mixing a little
possibly contributing to open source as we're at or something.
Emily, do you want to give us the rundown on that?
Yeah, absolutely.
So the idea behind a portfolio, and this is especially helpful for people who don't have
a formal education or haven't worked in very similar jobs or been able to learn on the job.
Because as you were talking about, this is a way they can show they can do the work, even
if they hadn't had an opportunity in school or at a company.
Like a portfolio project.
So we really recommend for it is doing something original that you care about.
Because, you know, one thing people might default to is like, all right, I'm going to go look
on Kaggle.
And I'm going to find like one of the data sets they have.
And I'm going to like do this competition where they like give you a data set.
And they like, you know, tell you to predict this thing.
And the problem with that is like, one, it doesn't really show your personality.
It skips over the steps that are really critical.
And you'll need to do in like data science roles, which is like gathering the data, figuring
out what question to answer.
And also, honestly, like if a company sees that in portfolio, you know, maybe they're worried
that like, oh, did they just copy someone else's code, right?
Like this is a problem a lot of people have worked on.
So we recommend, you know, kind of finding, figuring out a question you're interested in
answering, or finding a data set that's interesting to you and exploring it to like figure out
like, okay, what are some like interesting findings I can have from that?
And so putting that together and then sharing it on GitHub.
So you have the code with the readme that describes it.
And then ideally also having a blog, because a blog is really great.
Someone may not look through, you know, like hundreds of lines of your code, but they might
be like, oh, yeah, let me read about like what they found.
I'm like, look at some visualizations or read a tutorial that they wrote because they use
natural language processing for this project.
Or even just look back two years and see they've been doing this for as long as they said
they have been or something like that.
Yeah, exactly.
Exactly.
And so Jacqueline shared the example project that she did, which is trading a network on
offensive license plate.
So I do want to emphasize like it doesn't have to be, you know, something very serious.
Or if you want to go into finance, it doesn't necessarily have to be like a finance project.
Because, you know, if you're like, oh, I use like neural networks, or like one of the
projects I did was I built a dashboard.
And so that shows like I can build a dashboard from scratch.
So I really think this can be like a great way to show off like some of your personalities,
your coding skills, your communication skills with the read me and the and the blog, and
maybe even demo in an interview.
So when I was doing the job search after graduating from boot camp, I would show I bring my laptop
and sometimes I would show this dashboard that I had built.
And I'd be like, look, and you could filter it and you can click around and it like you
click this goes to a link.
And I think that made it like much more, much more real to them than if I was just talking
about this theoretical project.
Absolutely.
That's awesome.
That's really good advice.
Another thing I think would be valuable is if people can in the right place, the right
background and whatnot is to maybe contribute to some project that's relevant in the data
science space.
Right?
Like, if you have two people you're interviewing, and one's like, well, I'm pretty good at using
Jupyter.
The other person's like, I had two PRs merged into Jupyter.
And actually, you know, some of the people on the team, you know, a little bit who work
on like, okay, I know who I'm going to talk to a little bit more next about, you know,
it's a different level of credibility.
Even if like what you did was there were no unit tests for this part of the library.
So I wrote some unit tests, or I worked on the documentation, or I worked on a tutorial.
Like, it doesn't have to be I rewrote the main thing, right?
Yeah, absolutely.
And we have like, I think it's 14 chapters on like joining the community.
And that's one of the things we talk about is contributing to open source and exactly what
you said.
Like it can be, you know, writing new documentation, even fixing a typo, just these ways to get
involved.
And, you know, I do want to emphasize that like, you know, this isn't something that is required
to get a data science job.
Like I know a lot of data scientists who don't have like a GitHub with personal projects who
don't have a blog who don't contribute to open source.
So they're still like excellent data scientists.
But it's just like, what are the ways that one, hopefully it's fun to hopefully you learn
something like that's the other big point of the portfolio project.
It's a great way to direct your learning like you find out, oh, I need to like, you know,
figure out how to scrape this website, let me go like to gather the data.
So let me go learn web scraping.
And three, like and to stand out in interviews, but it certainly, you know, shouldn't, I don't
think it should be like a requirement for any job, for example.
Yeah, right.
I agree.
And it probably a different company archetypes, they probably care or completely don't care
about this, right?
Like the big geospace, geo aerospace contracts, they're probably like, okay, great.
We don't know that we trust you if you're writing code for just for open source.
That might be weird, right?
Whereas like the startups are like, oh my gosh, that's so amazing.
I can't believe, you know, or the big tech company.
We're trying to move to open source.
So that's great.
You can be one of our advocates.
So yeah, I suppose that it probably varies a lot as well in there.
All right.
Well, I would love to talk more about this because there's a,
kind of cool ideas you two put in there, but I think we have to leave it at that.
Let me ask you the two quick questions before I let you out here.
If you're going to write some code, do some data, science data analysis, what editor do
you use these days?
I use RStudio, although what are my development goals?
I'm actually starting to use the Vim as the editor within it.
So I'm trying out that.
But yeah, I've been, I've been using RStudio for, for years now.
Although I also heard, what is it?
Is it Visual Studio?
Like now SportsR and like one of my teammates was trying that out and really liked it.
Yeah.
Probably VS Code.
Yeah.
That's awesome.
VS Code.
Yeah.
And Jacqueline?
So I'm a 50, 50 split between RStudio and Visual Studio Code.
So RStudio for anything R related, literally anything else, including like just notes to myself,
Visual Studio Code.
Yeah.
Awesome.
And then notable libraries out there for data scientists, not necessarily something super popular,
but you're like, oh, this package is really awesome.
People should know about it.
Do they have to be Python libraries?
No, they don't be Python.
No, there's more of a data science topic.
So it could be running across the board.
Well, I will mention one of the libraries that I created when I was consulting for T-Mobile.
It's called Load Test and it's for R.
Me and the T-Mobile team made it and it's to help you if you're making an API in R using
the R library plumber, which is great.
You can use the Load Test library to test it to make sure that your R model will be able
to handle the load.
Okay.
Awesome.
Yeah.
Very cool.
Emily?
I have so many.
Now I'm wondering if I should, you know, say my own package as well.
Do it.
Stop from Boat.
I'll briefly share.
I use it less now, but I use it a lot at my last company, Funnel Join for like analyzing
sequences of events.
You're like, all right, who like came to the website?
1% of people who visited the homepage then bought a subscription.
But what about if we want that within two days?
So that's one.
But another package, R has so many packages that I like.
So one thing that I'm very excited about, which is like sort of hot, it's been in development
for a while and in pieces, but is tidy models.
So we're rethinking of how to do modeling in R with a brand new website out now too.
So I think it's tidymodels.org.
So I'm excited about that.
And then finally, just when the janitor package is a fun one for if you do cleaning data, it
just has all these functions for like you import a data set and there are spaces in the names
and like weird capitalizations and like weird like characters that make it hard to work with.
It has a function like clean names and it will just fix all of those for you.
Oh, that's cool.
Yeah.
And I think there's a PyGenitor as well.
I'm not sure if it's directly the same, but so people in Python, they do PyGenitor.
You'll also go and throw one out there on the Python world for folks.
There's this thing called MissingNo, MissingN-O.
It's a visualizer for missing data.
So you just have a Pandas data frame and you throw it at it and it'll draw you like a big
cool graph of visually where your data is filled in, where it's missing and all these sort
of like correlations of you're missing this data, you're probably also missing that data.
It's super cool.
Yeah.
There's actually an R1 for that, which is Manier.
I never know how to pronounce that, but it's also for like missing, yeah, Manier for missing
data.
Awesome.
Yeah.
That seems super valuable.
Just get a quick, like I've got all this data loaded up.
Let me just look at it.
Yeah.
Visually.
Yeah.
Cool.
Yeah.
So tell us how people can get your book.
Our book is online.
You can buy from the Manning website, who's our publisher.
And we actually have two URLs because we had a disagreement about this.
So we have the professional URL.
Do you want the professional version of the book?
Yeah.
DataSciCareer.com.
And then we have the fun version of the book, which is at bestbook.cool.
And now those will take you to the same webpage, but know if you click bestbook.cool, you're
getting the fun version of the website.
Oh, yeah.
You're getting DataSciCareer.com.
It's the professional one.
Yeah.
And maybe we should have people guess like which one of us, which one of us is the fun
one, which one is the four serious.
Exactly.
Put it in the show notes.
Put it in the comment section at the bottom of the show page.
Awesome.
Well, Jacqueline, Emily, it was really great to have you on the show.
And I can certainly recommend your book.
It's spot on.
It covers a bunch of great topics.
People ask me about careers all the time, and I always want to have good advice to give
them.
And so here's definitely something they should check out.
Thank you so much.
Yeah.
You bet.
Yep.
Bye.
This has been another episode of Talk Python to Me.
Our guests on this episode were Emily Robinson and Jacqueline Nolus, and it's been brought
to you by Kite and Linode.
Kite is the smart AI-powered autocomplete for your editor.
And the more powerful your editor is, the more effective that you are.
Get Kite for free at talkpython.fm/kite.
Start your next Python project on Linode's state-of-the-art cloud service.
Just visit talkpython.fm/Linode.
L-I-N-O-D-E.
You'll automatically get a $20 credit when you create a new account.
Want to level up your Python?
If you're just getting started, try my Python Jumpstart by Building 10 Apps course.
Or if you're looking for something more advanced, check out our new async course that digs into
all the different types of async programming you can do in Python.
And of course, if you're interested in more than one of these, be sure to check out our
Everything Bundle.
It's like a subscription that never expires.
Be sure to subscribe to the show.
Open your favorite podcatcher and search for Python.
We should be right at the top.
You can also find the iTunes feed at /itunes, the Google Play feed at /play, and the
direct RSS feed at /rss on talkpython.fm.
This is your host, Michael Kennedy.
Thanks so much for listening.
I really appreciate it.
Now get out there and write some Python code.
I really appreciate it.