Slashdot Mirror


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.'"

57 of 422 comments (clear)

  1. But ... by WrongSizeGlass · · Score: 5, Funny

    I'm self employed, and even though my boss is jerk he's not going to fire me because I call myself a programmer.

    1. Re:But ... by Anonymous Coward · · Score: 3, Interesting

      And me too! I used to work for other people, but got tired of the instability in the 'work for hire' work world. They need you for something, you get hired, you solve the problem they have been staring at for 6 months, you attempt to help in other ways once all the fires they throw at you are out, they get nervous about you as 'an outsider' interfering with the business, and the software engineers God intended for the company (the ones who couldn't put out the fires they handed to you) and so suddenly there you are with the collective 'they' handing you your hat, once again unemployed. I've even worked for places where, after you are gone, the regulars still can't handle the fire situation, and within one or two months, they are once again looking for a fireman. So I finally started up my own. Its a lot more work than work-for-hire, and even after things were built and running, the money was less, but it was steady, and growing. Early on, there wasn't enough to put bread on the table, but you keep it going and do work for hire. You start out with 1.25 times the income of straight work-for-hire (and about 1 1/2 times the work). Once it gets to about 1.75 times the income of work-for-hire, its time to bail on work-for-hire, and from that point on, your life belongs to you.

    2. Re:But ... by Midnight+Thunder · · Score: 3, Insightful

      I think programmer is still a fine title. In all reality titles for software developers are so varied and vague, that as long as I am getting my pay cheque, I am quite happy to be called a 'Senior Code Monkey'. At that point I am also happy to treat my boss as 'Manager Monkey' and the CEO as 'Chief Baboon'. ;)

      --
      Jumpstart the tartan drive.
    3. Re:But ... by rally2xs · · Score: 2

      You're life doesn't belong to you if you're working 1.5X as much time as you used to, which was likely in excess of 8 hours anyway. 12 hours a day for some means too tired to do things like go to the gym, have a social / sex life, etc. If you live to work, that's one thing, but most of the rest of us work to live, and probably should learn something like welding or electrician that 1) can't be outsourced and 2) is usually no more than 8 hrs a day 5 days a week.

  2. Makes sense by rsilvergun · · Score: 3, Interesting

    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/
    1. Re:Makes sense by SharkLaser · · Score: 3, Funny

      Well, programming practically is the computer-world equivalent of construction worker or cleaners. Sure, it's useful so people actually can get things done, but it isn't practically challenging or something lots of people can't do if given teaching. Developers have to make the important decisions regarding a product. If you wanted to work in the gaming industry, would you rather want to be a coder or actually the game designer?

    2. Re:Makes sense by Surt · · Score: 3, Insightful

      Programming has one advantage over construction workers: it's mind-numbing indoor work. Most people cannot stand it. That's the real hurdle keeping people out of the industry.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    3. Re:Makes sense by etymxris · · Score: 5, Informative

      Programming seems easy to you and me, but you would be surprised at how many people just cannot do it no matter how much training you give them. Anyone can clean, most people can do construction. Maybe 1 in 10 people could program if they really wanted to, and only 1 in 10 of those will actually want to.

    4. Re:Makes sense by Lemmy+Caution · · Score: 5, Funny

      Are you saying you are the 1%?

    5. Re:Makes sense by Dr_Barnowl · · Score: 4, Insightful

      Exactly ; they've done studies that prove this - not everyone can program a computer. Every time I see one of those GUI programming environments designed to enable users to program, I sigh. Real programmers detest them (unless they are a mile-high model overview and they fill in the gaps), and people who can't program still can't program, so implementing them is pointless and counter-productive.

      If 30-60% of people who self-selected to go on a Computer Science course can't program, what's the percentage in the general population?

    6. Re:Makes sense by CodeBuster · · Score: 4, Interesting

      Programming seems easy to you and me, but you would be surprised at how many people just cannot do it no matter how much training you give them.

      Please mod parent up. This is exactly right. All of my experience, both in school and now working as a software developer, confirms this.

    7. Re:Makes sense by Synerg1y · · Score: 2

      You can build your muscles a lot faster than you can your mind. Back to the manhole for you!

    8. Re:Makes sense by anonymov · · Score: 4, Informative

      Well, filling in a bunch of formulas IS a form of dataflow programming.

      It is easy for non-programmers because it quite closely maps real-world calculations on a sheet of paper to the computer screen - just fill in the initial values and write down formulas without worrying about operations ordering. VisiCalc and those who polished the concept after them did a pretty nice job.

      On a side note, Visicalc authors' notes make for quite an interesting read.

    9. Re:Makes sense by A+nonymous+Coward · · Score: 2

      One of my bosses discovered he could weed out most "software engineer" candidates by giving them a simple recursive programming task. It was amazing the number of candidates who could write your standard simple recipe-style program, but were baffled at the idea of recursiveness, or even nested data, pointers to pointers and arrays of arrays and simple combinations.

      So yes, programming has divisions like all other activities: people who can build a bird house but not a people house, or can change spark plugs but not an engine.

    10. Re:Makes sense by Dahamma · · Score: 2

      That and when some crazy laid off tech worker burns down the building over his red stapler. Plus, who doesn't want to bring their lunch in a pail?

    11. Re:Makes sense by gman003 · · Score: 3, Informative

      If you wanted to work in the gaming industry, would you rather want to be a coder or actually the game designer?

      Bad analogy there. Game designers are about as far from programming as possible. You see plenty of game designer/level designer people or game designer/storywriters, you see some game designer/artist people (particularly in Japan), and you even see some game designer/musician people. I can't name of the top of my head a single game designer/programmer who isn't an indie developer (where everyone is a bit of everything, really).

    12. Re:Makes sense by tibman · · Score: 2

      Discovering recursion changed the way i looked at life.

      --
      http://soylentnews.org/~tibman
  3. meh by Anonymous Coward · · Score: 2, Insightful

    Don't worry what you call yourself. Do good work and people will want to work with you.

  4. Depends on why I'm referring to my profession by Mean+Variance · · Score: 4, Insightful

    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.

    1. Re:Depends on why I'm referring to my profession by emilper · · Score: 2

      scarce

      they want us to fix their windowses

    2. Re:Depends on why I'm referring to my profession by JWSmythe · · Score: 2

          If you go any farther than "I make software", their eyes glaze over anyways.

          For over a decade, I've held high level IT positions, including responsibilities in management, systems administration, network administration, and software development. My current title is "Director of Information Technology". When someone asks what I do, I just say "computer stuff". I elaborate a little bit at a time, until I understand what level they're at. In most social circles, "computer stuff" is all they need to know, or can comprehend.

            To many of them "IT" is the group that consists of the guy who comes to their desk to fix problems. The whole department, regardless of what they're doing, is considered "that guy who fixes my computer when it breaks." Ya, the lowest rank and responsibility in my department, and that's all anyone understands it to be. .. that's not to imply that the desktop support job is crap. That just happens to be the lowest position in my department. :) I have a lot of sympathy, since I have done it, and executives always seem to think that I should help them with their desktop problems, even if it's that they accidentally turned off their power strip, and the computer won't turn on. Sometimes I wonder how some people manage to survive at home. They don't appear to have the skills to work a light switch, or change a lightbulb. I don't quite understand how they make themselves coffee in the morning without burning their house down.

      --
      Serious? Seriousness is well above my pay grade.
  5. Such sage advice... by The+Living+Fractal · · Score: 5, Interesting

    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.
    1. Re:Such sage advice... by snowgirl · · Score: 5, Insightful

      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

      Sarcasm and all, this is the rantings of a single person at a single company, about his own personal view of the topic. I could probably find someone who would tell you that using the Oxford comma is likely to get you fired, and due to some forms of projection (the assumption that you are "typical", and you model everyone in the world based on yourself) they will assume that it's the prevalent opinion.

      --
      WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
  6. Programmer != Engineer, idiot. by sichbo · · Score: 5, Informative

    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.

    1. Re:Programmer != Engineer, idiot. by FooAtWFU · · Score: 4, Insightful

      There's nothing worse than retards who get a college degree in programming and start calling themselves "engineers".

      I work with these machines - design them, refine them. You could, with just the slightest hint of fancy, refer to them "difference engines". I am an Engine-er. Welcome to the English language; I suggest that you save yourself some grief and just deal with it.

      (Of course you need a license to do something useful in Canada. Woo flippin' hoo. Canadian industry is all about the incumbent industries protecting themselves from competition through regulatory capture. That's also part of why you have such sucky telecom services that you're always complaining about.)

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
    2. Re:Programmer != Engineer, idiot. by RichMan · · Score: 4, Informative

      In Canada the degree does not matter. No one, no matter what qualifations can call themseleves and engineer unless they are a professional engineer.

      To be a professional engineer they must be a member of their provincial professional engineering association. This is roughly equivalent toa US lawyer being a member of the bar for a particular US state. The idea is that "Engineers" are professionals and to call yourself one you must be a member of the professional assiation.

      What is a professional engineer (Ontario Professional Engineers Organization)-> http://www.peo.on.ca/registration/LR.html

      Most civil and a high percentage of those who graduate from mechanical engineering do become professional engineers. It gets you the official STAMP which is used to mark building and machine documents. Most electrical engineering college graduates do not. Those who work in power engineering do. In Canada the main reason to become a professional engineer is to get your stamp. If your job requires you to stamp designs then you will get your professional engineering membership.

      Very few software projects get engineering stamps. The link above also discusses the seal.

      http://www.ccpe.ca/e/index.cfm

       

    3. Re:Programmer != Engineer, idiot. by Rostin · · Score: 2

      Licensure in the US is handled by the individual states, and the rules and enforcement can be murky and inconsistent. I have a degree in the one of the traditional areas of engineering, but I am not licensed. I was told in college that in my state, my employer is allowed to refer to me internally as an engineer, but I can't represent myself that way to others (e.g. on my business cards) as an engineer unless I'm a for-real P.E. I'm honestly not sure where the line is, though. It could be a matter of fact that my job title is "Engineer II". If I put that on my resume, am I breaking the law, or is it fine so long as it's sufficiently clear that I'm not claiming to be licensed? Here's an old article from 2003 specifically about this issue in Texas. I'm not sure how it turned out, but it looks like a mess.

    4. Re:Programmer != Engineer, idiot. by Mr+Z · · Score: 2

      For this reason, I've thought about taking the PE and registering. (I live in Texas.) But, it's been 15 years since I graduated with my BSEE, so it'd take some serious studying to refresh myself on all the calculus and such that I don't use every day. (I still remember all my Calc I pretty well. Calc II, Calc III, DiffEq, Advanced Statistics... not so much.)

      My business cards have never said "engineer" either. Where I work, the rule seems to be "Take whatever title you would have put engineer after, and just omit 'engineer'." So, back when I was considered a DSP software applications engineer, my business card simply said: "DSP Software Applications". These days, I get to use the title "Architect," which doesn't have the legal baggage. Yay me.

    5. Re:Programmer != Engineer, idiot. by hjf · · Score: 2

      Except I wouldn't like to use a bridge designed by an self-called "engineer", exploting the english etymology.

      Because in non-english speaking countries, the roles of architect (the one who designs) and engineer (the one who makes the real-life calculations) are very clear. An architect can design a 100-story building, but he needs an engineer to do all the calculations (or check them). It's what we call "sign the blueprints".

    6. Re:Programmer != Engineer, idiot. by BasilBrush · · Score: 2

      Sounds like protectionism. I have sympathy with the idea that you need a certain qualification to call yourself an engineer. I have no sympathy for the idea that you need to join a club to call yourself one.

  7. Everybody is an engineer? by babblesaurus · · Score: 5, Insightful

    . . . 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.

    1. Re:Everybody is an engineer? by FooAtWFU · · Score: 5, Insightful

      . . . 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.

      I agree 100%! As we all know, real engineers drive trains.

      chugga chugga chugga chugga choo chooooo!

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
    2. Re:Everybody is an engineer? by The+Living+Fractal · · Score: 2

      Or to take it even further, back in the 1300s when an engineer was someone who operated military 'engines' - aka machines like catapults.

      And let's not forget the Army Corps of Engineers.

      Point being, if someone goes to school to learn how to mix chemicals together and then comes out angry that other people are calling themselves engineers, too, but without the schooling, then maybe that someone should go BACK to school and learn some history.

      --
      I do not respond to cowards. Especially anonymous ones.
    3. Re:Everybody is an engineer? by rbrander · · Score: 2

      If you think structural engineering is not done on deadlines and budgets, you're kidding yourself.

      But your main point is mostly correct - real software engineering is HARD. One of my courses was about applying mathematical proof methods to programs and proving them correct. It was HARD. Exponentially so for more-complex programs.

      However, it *is* done, mostly in EE with control systems. Medical equipment, phone exchanges , aircraft control - anything where people die if there's a failure and the maker gets sued for it - is done to engineering standards. That is, it costs 10x as much per line of code. Boeing's software guys I have no problem calling "Engineers"; but of course, most of them already were before they added programming totheir skills.

      All software could be done to such standards, but we don't want to pay for that , so we endure some bugs instead. Less in some places than others, though - banks have very few software errors.

    4. Re:Everybody is an engineer? by hjf · · Score: 2

      I was going to give you a long explaination, but paraphrasing you will suffice:

      Point being, if someone goes to school to learn how to fix people and then comes out angry that other people are calling themselves doctors, too, but without the schooling, then maybe that someone should go BACK to school and learn some history.

    5. Re:Everybody is an engineer? by Micklat · · Score: 2

      It's true that formal verification can't prove the program "does what I want" if you screw up specifying what you want

      Which is exactly my point. For any sufficiently interesting problem, specifying what you want in a 100% perfect way is impossible.

      In addition, there's no formal way to prove that two programs produce the same output (that would be equivalent to solving the Halting Problem), and as a consequence there's no general way to prove that a program is equivalent to the specification.

      You overstate the theorem. Determining whether or not two programs produce the same output is undecidable. That doesn't mean that given two non-trivial programs, you can never prove that they produce the same output (rather, it means that there's no algorithm that can receive the representation of the programs and determine in finite time and without mistakes whether or not they have the same output).

      So, where does this put us? To get safety and correctness guarantees about programs, we need not write algorithms that prove correctness about any program provided to them. Rather, we need to write proofs concerning the particular program that we wrote - and it helps if we wrote our program in certain ways that make those proofs easier to develop. This is certainly possible.

      You might counter that certain correct programs have no correctness proof. This is true only in a superficial way. A program may have correct behaviour, but if its author cannot write a correctness proof for it - even an informal one - then that means the program isn't understood by its own author, and should be fixed. Good code has correctness proofs, even if they're informal and only in the author's head.

      I must make one exception to this rule, however. In AI code, there are sometimes heuristics that have no proof, not even an informal one, because the author doesn't have more than an intuition about why the heuristic should work. But that's a small minority of the total amount of code being written.

      Of course, like you said, parts of the program can be simple enough to prove in a formal sense, but that doesn't nearly cover all the interesting cases. There's still plenty left over.

      And, like I said in my first post, even formally verifying the parts where it is possible would lead to unacceptable budget and deadline overruns, so it's rarely done.

      This is often true, but as you probably know, there are cases where verification is worth the cost. Aerospace and medicine come to mind. I'd also hazard a guess that operating systems deserve the extra investment of formal verification. Has anybody ever made a quantitative comparison of the up-front cost of formal verification with the cost of bugs and maintenance work that would have been prevented by formal verification? Is formal verification really that expensive, or are does it just seem expensive because we habitually ignore the costs of skipping it?

    6. Re:Everybody is an engineer? by Arlet · · Score: 2

      Good code has correctness proofs, even if they're informal and only in the author's head.

      But that's still a completely different situation than a structural engineer designing a bridge, and testing its strength by a number of fairly well defined methods and adherence to building codes. An informal proof, existing only in the author's head, is poorly defined, and can easily be wrong.

      And, of course, in many cases the specification isn't clear. How would you formally verify a climate model, for instance ?

      Is formal verification really that expensive, or are does it just seem expensive because we habitually ignore the costs of skipping it?

      I think it's really expensive, but in either case, it's not fair to blame the software engineer for the mess.

    7. Re:Everybody is an engineer? by Chris+Mattern · · Score: 2

      In addition, there's no formal way to prove that two programs produce the same output

      Of course there is. You can't prove that any two *arbitrary* programs produce the same output (that would be equivalent to the Halting program), but with programs that are written to be formally verified, you can.

      and as a consequence there's no general way to prove that a program is equivalent to the specification.

      Once again, you can't prove an *arbitrary* program is equivalent to a specification. Programs that written for verification can be so proved.

      Of course, like you said, parts of the program can be simple enough to prove in a formal sense

      I never said that. I said that there were specific failsafe properties of the *whole* program that can be proved, that such proofs are very useful, and that you *only* get assurances that such properties are true if you formally verify.

      like I said in my first post, even formally verifying the parts where it is possible would lead to unacceptable budget and deadline overruns, so it's rarely done.

      That, alas, does seem to be the case. In the software industry, "good enough" is good enough. And we're all left looking at the third software glitch we've suffered today.

  8. Recent graduate advice by FooAtWFU · · Score: 3, Interesting

    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.
  9. Developer, not engineer. by Vellmont · · Score: 2

    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
    1. Re:Developer, not engineer. by xero314 · · Score: 2

      There is clearly a difference between Programing, Engineering and Architecture. Most of us that have been in the industry for a while have figured this out. You need to find your place in that structure. I personally identify myself as a Software Engineer (perfectly legal in the US as long as I work for someone else). But I identify that way because I send more of my time working on bigger picture items and include in such considerations topics like engineering ethics, than the time I spend typing out code. I can't identify with Architecture at this point because I don't spend my days sitting around making diagrams and drawing pretty pictures, I actually spend my time figuring out how to get actual work done.

      All three of these classifications are important when selling, designing and building large systems. The smaller, and less critical, the system the less likely you need each of these categories, which is very similar to material engineering (You can build a bring over your back yard stream all by your lonesome, but you would probably have a hard time building a span of over the Mississipi, for public use, without have a full team).

      Programmers are the welders and plumbers of the software industry. They are important and necessary. They would probably do well to organize and bargain collectively. Engineers fill a different role, though they might write code now and again, it should not be their top priority.

    2. Re:Developer, not engineer. by xero314 · · Score: 2, Insightful

      I doubt that. As far as I understand it, a programmer is a low paid, no responsibilities job, mainly existing in the USA (no idea how that works).

      Read my prior statement that, just like welders and plumbers, programers (or developers if you rather) should organize and bargain collectively. Most large software projects would not be able to be completed for a reasonable cost without programers. Engineers are expensive, at least good ones, and you would be foolish to pay engineers to do what developers do. And I don't know about you but I don't want a mechanical engineer trying to fix my car or installing my heating a cooling unit. You need to know when to get the right person for the job.

      In my life I never have met a "programmer". Usually in a software development organization everyone has a university degree, aka software engineer, computer science degree, etc.

      It's possible that you don't use the same terms where you live. In the US a programer is someone that primarily writes actual software code. Sure they might dabble in design but on a large scale it's not their forte. This are the people that take the loft designs of the Engineers and make it actually work. As an Engineer, I totally understand this, and it's not at all unique to software.

      However reducing an architect to someone who does not know "how to get actual work done" sounds very strange to me. After all, how should he be able to "make diagrams and drawing pretty pictures" if he does not know how to "actually make things work"?

      I'm not trying to diminish what Architects do, but it really is just drawing pretty pictures. This is true of all fields with architecture, not just software. Architects don't build houses, they don't even design them. Architects have grade ideas about over all look and feel, or in the case of software, general structure. Architects draw pictures and make models. This then gets fed to Engineers who spend their time trying to figure out how to turn that architecture into a useable product. Engineers draw the schematics. Then the technicians, be it carpenters, or programers, take these schematics and use them as the basis of the final product. Usually you can follow the schematic pretty close, but there will always be one or two changes that have to be made, like some required part being out of stock or some customer need was not addressed, or some component is to expensive to implement in IE.

      Each part is important to the integrity of the over all product. If architects built buildings they would fall down. If engineers designed the aesthetics of them they would be functional but no one would actually want to live or work in one. If technicians designed them they would end up as a big unstable pile of mismatched parts.

  10. more fun.. by mevets · · Score: 2

    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.

    1. Re:more fun.. by neokushan · · Score: 2, Funny

      Hi! I'm the Versatile Administrator of Giant Interconnected Network Architectures, nice to meet you.

      --
      +1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
  11. Need people to cut code by etymxris · · Score: 3, Interesting

    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.

  12. I knew AD&D would help! by Rinikusu · · Score: 5, Funny

    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
  13. Don't be just a programmer by rbrander · · Score: 2

    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.

  14. It's not firing by ryzvonusef · · Score: 3, Funny

    No, it's called a divorce :P

    --
    I am an ACCA student. Got a query on Accountancy/Finance? Maybe I can help!
  15. Engineer by Chris+Deckard · · Score: 2

    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.

  16. Re:State law: Only engineers can have that title. by salesgeek · · Score: 2

    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
  17. Re:Programmers are not Software Engineers by WWE-TicK · · Score: 2

    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.

  18. I'm a programmer by msobkow · · Score: 4, Insightful

    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.
  19. Validation and Verification by dtmos · · Score: 2

    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.

  20. Re:State law: Only engineers can have that title. by dtmos · · Score: 2

    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.

  21. Wrong-o by dtmos · · Score: 2

    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.

  22. Title Inflation by Tablizer · · Score: 2

    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.
       

  23. I write programs, but I'm not a programmer. by Mr+Z · · Score: 2

    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.