Career Advice: Don't Call Yourself a Programmer
Ian Lamont writes "Patrick McKenzie has written about the do's and don't's of working as a software engineer, and some solid (and often amusing) advice on how to get ahead. One of the first pieces of advice: 'Don't call yourself a programmer: "Programmer" sounds like "anomalously high-cost peon who types some mumbo-jumbo into some other mumbo-jumbo." If you call yourself a programmer, someone is already working on a way to get you fired.' Although he runs his own company, he is a cold realist about the possibilities for new college grads in the startup world: 'The high-percentage outcome is you work really hard for the next couple of years, fail ingloriously, and then be jobless and looking to get into another startup.'"
I'm self employed, and even though my boss is jerk he's not going to fire me because I call myself a programmer.
If it's one thing America's taught me it's that doing useful work is the worst way to earn money around these parts.
Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
Don't worry what you call yourself. Do good work and people will want to work with you.
In casual conversation among people who wouldn't know the nuances of the various "programmer"-like terms, I do say, "I'm a programmer." It gets the point across simply that most people understand.
If I'm in a semi-professional setting of white collar adults, I usually say "software developer."
On a resume or among those who know the industry standard, I say "I'm a software engineer" because that's my title.
If it's tied to a conversation that might have career potential, I give the true classification at work: senior software engineer.
Because, you know, the 1000+ currently open job postings for keyword "programmer" on Monster.com are just a perfect example of situations where people are already looking to fire you. After all, that's why they created the posting, just so they could waste company resources and fire someone.
/sarcasm
I do not respond to cowards. Especially anonymous ones.
In Canada, it's illegal to practice engineering, or call yourself one, without a engineers license. There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers". It's an insult to every actual certified engineer in the world.
. . . and 'real' engineers everywhere weep. Obviously every case may be unique, but calling yourself one thing which has a set of implications does sort of slander professionals in the field whose titles you are trying to snag.
It doesn't matter if your first job leaves you unemployed and searching again in a few years. It matters that you're working with people who are smarter than you are and learning how to actually program and write software effectively. Job security? Pay? If you end up as an undifferentiated code monkey left to your own devices or, worse, fighting a monstrous legacy code base and bureaucracy that you're powerless to alter *cough*IBM*cough... you can very easily find you've crippled the rest of your career. At best, the work will be a dull slog.
Go for the startup, if they sound like they have some idea of how to do things right and will offer you meaningful professional development. If you can't take a career risk at this point in your life, when do you think you will be able to? And then for Job #2, you'll have some Skills. You'll be infinitely more employable. You might even be able to look at the monstrous legacy codebase and say, with the authority of experience, that this stinks and there's a better way to do it and yes you will do that refactoring, and you won't hate your job.
The World Wide Web is dying. Soon, we shall have only the Internet.
I've always hated the term Software Engineer. I've never identified with engineers, or engineering. To me software development is a form of applied mathematics, not engineering.
Programmer is usually associated with a low-skill person who cranks out code. A developer is someone who has to understand the problem inside and out, not merely just complete the task as prescribed.
AccountKiller
Invent new meaningless titles for yourself, and for extra grins make them acronym out to something amusing.
Architect of Systems Software
Architect of Computer Interaction Design
Personal Computer Programmer
High Availability Software Head
I'm sure you can do better. There is nothing better than seeing your name and title on a contract, slide or sign and thinking, really, nobody noticed.
Too many people in IT don't know the first thing about writing code. I think things are changing though. Companies seem to realize you can get by with less people that can do more if your workers can actually program.
Calling oneself a "programmer" tells us exactly what we want to know when we're looking at candidates. So many people put C, C++, Java, C# or whatever on their resume and can't even write a simple for loop.
Patrick McKenzie isn't right about how he describes businesses and employees. We see resumes all the time where someone highlights how they saved their last company six, seven, or eight figures. We don't want to hear that. We want to hear that you have the skills needed to do the job we're hiring you for.
He also isn't right about the language not mattering. It's much easier to go from low level languages to higher level languages than vice versa. If someone was an expert in VB or Python, we would be very hesitant to hire them for a position that required coding in C. And if someone can pick up a language in just a few weeks, then they should do that before they apply to jobs asking for that skill set.
That's why I put "20th Level Code Rogue/Network Warlock" on my resume.
If you were me, you'd be good lookin'. - six string samurai
I've had a terrific career, culminating in a six-figure salary, six weeks vacation, very flexible start times (they wearily put up with my 10AM arrivals as long as I stay to 6), and my choice of projects, and my boss's, boss's, boss's boss recently writing me to congratulating me on 25 years of service and 40 years since I started programming (at 13, with punch-cards) with kind words like "one of our best assets" and "one of a kind".
My secret? I started with a "real" engineering degree and a few years experience at it, then went back or the CompSci degree. I was going to take CompSci at 18 after 5 years of "fun" programming and some paid work doing stats with FORTRAN for civil eng grad students; but backed out with a funny feeling that I should start off in closer touch with the "real world". Best call I ever made.
Being grounded as first an engineer, accountant, doctor, lawyer, nurse, salesperson, surveyor, MBA, technician, any profession that involves a lot of data - in these web days that includes "graphic artist" and "PR", is the difference between GP and medical specialist.
The value you add is that you can skip over half the money spent on software - the requirements analysis, the whole phase of explaining the problem to programmers. Plus, you can go back and forth from yor base profession to w"mostly programming" as the needs of the business come and go. Where there are big software projects, you're the obvious guy to be project leader, you know when the hired programmers are BS-ing or just off-track.
And you're the guy everybody relies upon when the IT systems are balky.What really freaked me is the calls for help I getfrom "kids"- Junior engineers in their early 20's who grew up with Windows PC's and the Web- but they've never studiedprogramming at all. They really aren't sure how to replace me!
So: don't just not call yourself a programmer - don't be one. Enhance another profession with programming.
No, it's called a divorce :P
I am an ACCA student. Got a query on Accountancy/Finance? Maybe I can help!
If you do not have an Engineering degree, you should not call yourself an Engineer. As someone who works for an Engineering University, who does NOT have an Engineering degree, I would never water down what an Engineer is. It is prestigious, and should remain so. Respect the title. If you're not one, don't call yourself one.
Sheesh. This is silly. The only place where there is an issue is when someone hangs out a shingle that and practices engineering. People with creative job titles (i.e. Database Engineer) and graduate engineers (4 year degree EE without license) are not being prosecuted for calling themselves by their job titles or degrees UNLESS they hang out a shingle and open a contract engineering company or are claiming to own a company that holds an authorization certificate and does not.
This whole trying to make engineering work like the law industry isn't going
-- $G
Something tells me you've never seen the curriculums for undergraduate software engineering degrees. They're computer science degrees with mandatory software management courses thrown in replacing what would've been elective courses in Computer Sceince. At least in the States they are. Nothing about the curriculums make them more "engineering-like" than Computer Science. Unless my CS program just happened to be more "engineering-like" compared to everybody else. Perhaps ABET accreditation makes all the difference.
I'm a programmer. I have been for over 25 years.
I'm not going to jump on the bandwagon of "software engineer". I think it's as ludicrous as "sanitation engineering."
Any employer who thinks "programmer" is a derogatory or lesser term is too blinded by buzzwords for me to be happy working for them anyhow.
I do not fail; I succeed at finding out what does not work.
The author, Patrick McKenzie, describes himself as an "awkward twenty-something CEO of a multinational company." As an "awkward fifty-something CTO of a multinational company," I can state that I have never read a more truthful and cogent collection of career advice for this profession.
What he says is the way it is.
Note this passage in the Florida statutes (471.031 (1)(b)1.): "A person may not [...] use the name or title “professional engineer” or any other title, designation, words, letters, abbreviations, or device tending to indicate that such person holds an active license as an engineer when the person is not licensed under this chapter, including, but not limited to, the following titles: [...] 'software engineer,' 'computer hardware engineer,' or 'systems engineer.'"
I can tell you from personal experience that the State of Florida will prosecute someone simply for having a business card with the title of "Software Engineer" who is not a Registered Professional Engineer in the state. (No, it wasn't my card.) People thinking that "people with creative job titles [...] are not being prosecuted for calling themselves by their job titles or degrees UNLESS they hang out a shingle and open a contract engineering company or are claiming to own a company that holds an authorization certificate and does not" are living in a dreamworld. A printed card clearly violating a statute is what's known in the legal profession as "physical evidence," and prosecutors wanting an easy conviction love these kinds of cases.
See this comment. You absolutely cannot call yourself whatever you want in the US. Rules vary by state, but in almost all states the reason you have every right to call yourself an engineer if you work in the engineering department of a company in an Engineering capacity, is because that industry is specifically exempted from such requirements (in Florida, it's the aerospace and military industries, with some other, lesser, exceptions). Calling oneself a "Software Engineer" without also being a Registered Professional Engineer is specifically listed as a prohibited act in the statues.
The "certification organizations" are irrelevant; this is state law.
If everybody inflates their title to avoid the pitfalls of peon-sounding titles, then it dilutes the worth of the higher titles, and pretty soon they all mean nothing.
"I'm not a trash-man, I'm a Waste Engineer!"
It just becomes a never-ending bullshit game. If we were good at that, we'd instead go into marketing or politics.
Table-ized A.I.
My job duties range from architecting caches and DSP structures, to coming up with clever ways to break systems, to automatically generating performance characterization suites, to analyzing the bulk quantities of data that result from them.
To do all these things, I write a fair bit of software to achieve these goals. But, in the end the software is a tool to reach some other end. It isn't an end in and of itself.
Therefore, while I program things (and program them well, IMHO), I don't consider myself a "programmer." My primary work output isn't programs. It's architectural decisions, performance analysis, etc. Programs are just a tool I use to get there. The fact that I fashioned my own tools just means I'm more likely to achieve my goals than someone who can't make their own tools when none exist that will give them the answer they need.
Now, if the primary output of my job was software, where others provided the requirements inputs, and I produced software to meet those requirements for someone else's consumption, then I might consider calling myself a programmer. But honestly, I have to believe a large quantity of software gets written to further some other immediate need, not as an end in and of itself.
Program Intellivision!