0:00
What is the difference between a computer programmer and a software developer
0:03
In this video I'm first going to talk about what a computer programmer does, then I'm
0:07
going to talk about a software developer, and then I'm going to talk about how you should
0:12
identify yourself. The textbook definition of a computer programmer is someone who is specialized in the use of
0:19
programming languages. They use these programming languages to write code, to build applications, they might also
0:26
write tests for those applications. In contrast, a software developer is the person who is going to be heavily involved with designing
0:34
the application. This is someone who might spend more time focused on the usability of the application
0:42
and the behavior of the application, how people interact with the application and utilize
0:47
the tools, the flow. Is the application accessible? Is it going to be meeting the needs of the customer
0:55
They often will be working closely with the customer in order to figure out the appropriate
1:00
solutions to build and what should go into it, maybe what the priority is, and to really
1:06
try and capture what it is the customer needs and what needs to happen to solve that problem
1:14
in the most user-friendly way possible. Even though that's the textbook definition of the difference between a computer programmer
1:21
and a software developer, the real difference is that real programmers know how to hit the
1:27
like button. Okay, seriously, the reality is that when it comes to titles in the programming industry
1:34
and I use that term loosely, that there is a lot of blurriness
1:39
It really isn't that clear. And part of the problem for this is that there really isn't a unified definition
1:45
Even though I said that those were textbook definitions, they really aren't because that
1:50
is the definition that one source applies to them. Each company has kind of its own culture, its own definition, and a lot of these terms
1:59
whether it's software developer, program, computer scientist, software engineer, web developer, then there's also, you get into front-end web developer versus back-end web developer
2:12
There are a whole bunch of different terms that are out there that are being thrown around
2:16
and used, and a lot of times, different companies are using these same terms and titles for
2:22
the exact same function, that they're the people who are writing code
2:27
Because based on that textbook definition of a computer programmer is the person who
2:33
writes the code and stuff like that, and a developer is someone who's just doing all
2:37
the business stuff, from a practical standpoint, and at all the jobs I've been at, we've been
2:43
doing both. With software engineers, which is the title I currently have, whether it's programmer
2:52
or anything else, you are writing code, but still you are often involved with working
2:57
with the customers, figuring things out from a usability standpoint, and this is especially
3:02
true for when you are working on the front-end. Now if you're working on the back-end, maybe there's not as big of a need for you to be
3:10
involved with the customer and stuff, because you can get the requirements, usually from
3:16
the front-end engineers, of this is the data that I need. And when you're building APIs, there's only so much you can do from a usability perspective
3:25
You aren't having to worry about the look and feel of things
3:28
What you're really controlling is the API calls that need to be made, what does that
3:34
endpoint look like, do the names of any query parameters make sense
3:40
And as you return the JSON data, or whatever format you're going to be using, does that
3:45
data make sense, do the names make sense, does the hierarchy make sense, and a lot of
3:51
times that is already decided for you based on the architecture and the schema of the
3:56
data being stored in the database, and yes there'll be times where you'll be doing some
4:01
translations into different structures and stuff like that. But those really don't affect the end user that much, in the same way that the front-end
4:13
UI affects the experience of a user. And then there's some cultural differences
4:19
In some locations around the world, the term computer scientist carries a lot of weight
4:23
and they're viewed as the people who are really getting stuff done at a higher level and stuff
4:29
and there's a little bit more prestige factor to that title. You go to another country and people will be like, computer scientist, like, you know
4:37
what's that? Or maybe they don't care as much and it's a software engineer that really matters
4:42
So how do you identify yourself when you're working in this industry? In my opinion, you should pick the label that best represents what you're doing, carries
4:49
the most prestige in your particular geographic location, and that tends to pay the most
4:55
Because some of these titles, when you're looking for jobs and stuff, some positions
5:00
tend to get paid more than others, even though you're basically doing the same thing. So you might as well pick the title and go for the jobs that are going to pay you more
5:09
for whatever it is that you're doing. And then when you're later applying to jobs, I do tend to customize my resume to try and
5:17
use the same kind of terminology and lingo that the company has in their job posting
5:23
because I want to try and communicate to them on their same level using their same lingo
5:28
And that doesn't mean I'm going to, like, go lie about, like, my former positions and
5:32
titles and things like that. That's not at all. But when I'm actually presenting myself as, like, who I am or introducing myself in a
5:39
cover letter and stuff, if a company is using the term computer scientist, then, you know
5:45
you might consider introducing yourself as a computer scientist. If on the other hand, they're, you know, listing the position for a web developer, introduce
5:53
yourself as a web developer. Even on your resume, if your title is formally listed as a software engineer, for that particular
6:02
position still list that as a software engineer and do that for each of the companies
6:07
But really, at the end of the day, these titles aren't going to matter much outside of getting
6:12
the job. Once you have the job, it's not going to be that important because you're going to be
6:16
doing very similar things. So now that you kind of have an idea of what the difference is between a computer programmer
6:21
and a software developer, you should watch this video to see how you can become a programmer
6:27
in nine months. And I'll see you in the next one.