Where Are the Programmers?

  • LOL, I guess lots of people think that developer does sound better than programmer. There's definitely something to the marketing, and if it keeps your job onshore, why not call yourself a developer.

    I've often called myself a data janitor. I clean up the messes that others make in the database.

  • In the last six months my title has changed from "Applications Development Consultant" to "Software Developer" - yet my actual job hasn't changed at all. Can't say I really care to be honest.


    Forever trying to learn
    My blog - http://www.cadavre.co.uk/
    For better, quicker answers on T-SQL questions, click on the following...http://www.sqlservercentral.com/articles/Best+Practices/61537/
    For better, quicker answers on SQL Server performance related questions, click on the following...http://www.sqlservercentral.com/articles/SQLServerCentral/66909/

  • I believe it has everything to do with the scope of your business, not necessarily the egos of those holding the titles. I have worked in places that were very small, and I was the "computer guy". My tasks there ranged from every computer related ability that I could conceivably perform, plus some that I had to learn while doing...these tasks included systems and network design and maintenance, network administration, all stages of software development (design, etc., etc.), switching and routing, database maintenance...as well as showing someone how to select multiple cells in Excel (and plugging their computer back in because they kicked the power strip).

    I haven't worked in really large environments, the largest I was in I was a Systems Engineer, and job duties were more defined. Now I am working as a "software developer", but am regularly included in discussions that span other software development tasks, and the appropriate roles for some of these tasks are not clearly defined. As a result, there have been things that have not received the attention that they should have...specifically, software design, since it entails knowledge that is currently not held by a single individual. So even in a smaller company such as the one I'm in now, the highly specialized roles can be noticably missing.

    My point being: The specialized job titles are necessary to logically identify and group the tasks and requirements that need to be addressed in order for a project to succeed with the lowest cost (time, effort, etc.) possible. Even if you're the only guy with all those titles, it still helps to know them. No boss I've ever worked for has ever known the difference between a developer and a programmer, nor have they ever explicitly laid out the requirements of my position (acutally minus one job: Systems Engineer), but every one of them has expected the tasks to be attended to.

  • j_e_o, that sounds like a programmer to me.

    One term I just hate is software engineer. We're not engineers, nor do I think most of us would want to be.

  • Good article, Steve. I remember that phrase, "computer programmer", too, and like you, I haven't heard it used in a coon's age. I'm currently a developer, or at least consider myself to be a developer. I'm also the "on site" DBA, since I have more knowledge of SQL Server than anyone else here, but believe me, I don't know half of what most people on this site do. It's an interesting question. I've been a "Software Engineer" at one point in my career and a "Programmer Analyst" at another point in my career. I don't know what the difference is between those two classifications, as I was doing the same thing. Now I'm an "Analyst Programmer", with the emphasis on analyst, rather than programming. I have the feeling that this name changes have a meaning and purpose, but sometimes to the troops in the trenches, it's hard to know what's the difference.

    Kindest Regards, Rod Connect with me on LinkedIn.

  • I wouldn't dispute any of the above, but what gets me is not the titles the silly verbs. A real architect designs buildings, but a software architect architects software. Talk about being on a high horse!

  • The age of true programming started the moment the first MICRO-Computers apeared in the shops. This is the moment in computer history where suddenly masses of people could afford and in fact did purchase a computer. Talented people emerged that had thrown themselves on the new phenomenon, making every previous procedure/organisation, tilte and programming knowledge, instantly outdated and next to irrelevant.

    The speed of development in programming and the knowledge sharing among programmers was phenomenal, people had programming clubs and shared code so fast, it was like the internet of today already existed! In every shop you could purchase magazines full of code for everyone to analyze and learn from! Radiostations had hours where the broadcasted code for you to record on tape and then load into your computer! It was an awsome era, as if fire or electricity just had been invented! Even the birth and insane development speed of the internet pales to this part of history. It was the only and true birth of computing as everything before that was just experimental at best and restricted to a handful of people!

    In these early days, everyone could afford his own machine and compilers were hardly used. Most worked with interpreters or machine monitors, used to examine and write machine code directly into memory using assembly mnemonics. Very few to my knowledge had or used compilers back then, but some did use assemblers which to some extend can also be seen as very primitive compilers (assembly to machine code).

    The whole process of putting your will onto the machine was called programming and in that sense, nothing has changed. Everyone that constructed instructions for a computer to put its will on it, in order to perform a reparative task, was and is in fact programming. The mere fact that today we use high level language compilers does not subtract one bit from this fundamental principle and I have a hard time understanding why anyone could argue otherwise. Maybe they just missed the early days, never absorbing the essence of what constitutes programming.

    And yes, people not programming computers back then were similar to what people today are when they still don't use mobile phones, the internet or are still watching black and while television. They were comparatively living decades into the past, completely surpassed by a new era of time and technological development. It took vested institutions more than a decade to somewhat recover from the instant gap in knowledge they had and many of the resulting issues are still felt today (noticeable in the way we school the future IT crowd).

  • Some people have already touched on the BI side of things and it's the most relevant for me.

    I started off as a completely non-technical analyst, but started working on ways of getting data as what was there was inadequate for my purposes. I then fell in with the wrong crowd, the BI team, and became a Data Analyst. The job title was in no way connected to my actual job, which was primarily the building of reports and interpreting them, but extended to database design, ETL development, process engineering, Marketing/IT translator, QA, design and so on.

    I'm now an MI Analyst and my role is still pretty much the same but using different a greater mix of technologies, I'm *shudder* having to work with PHP and I'm now in an IT team.

    I don't think of myself as being a developer, in IT, or being technically competent, but I can write SQL, build using the MS BI stack and do a reasonably decent job of administering a database. Whether Analyst is the right term for my role, I think it helps preserve my "non-IT" status (I have a philosophy degree- I really shouldn't be considered as IT-competent just because I write a mean SQL query).

    In regards to the Developer/Programmer distinction, coming from my doggedly held "non-IT" position, I put them all in the bracket of "Coder". They build applications using code. You get designers/architects who design it and often coders hold this role also. I think the level of design within somebody's role determines their level of seniority, but not necessarily the title.

  • Steve mentions that he often refers to himself as a "data janitor": someone who is always cleaning up someone else's database mess.

    How about "slave"?

    I don't know about everyone else, but I've had multiple jobs where I've had to work 60 to 90 hours a week for months at a time (my record is well over a year). Why? Because they keep telling me that if we don't ship on time, we will fail. What is failure? Not increasing the market share or making the next "big" sale.

    How often did my efforts actually result in increased market share or contribute to the next "big" sale? Almost zero. Why? Because the "features" that the geniuses in sales and marketing came up with really weren't what the customer wanted. What the customer wanted is usually that bug fix they've been asking for the past 3 years. You know, the one where if it was fixed they would buy more of the software? The bug fix that took me two days to correct, without working overtime? Yeah, that bug fix. At least one major study has shown that 45% of all features in a software product are NEVER used by those who purchase the product. An additional 15% of the features are rarely used. That is a whopping 65%. Ouch!

    Do I work those kind of hours anymore. Sometimes. But every time I do I turn to my management and ask them if they are really willing to pay the actual price for such abuse. I remind them that no one writes good software after being in the office fighting off distractions for 8 hours. Or after having worked 48 hours in a week. I remind them that taking time off on the weekend is in their best interest (and mine). I also tell them that overtime is a sign of poor product definition, poor planning and poor managment (they don't like to hear that for some reason).

    They still don't get it, no matter where I work. "Mythical Man Month" to them is just that-- a myth.

    Anyways, I hope my rant isn't construed as hijacking the thread.

    Oh yeah, "programmer" = "slave"...that was my point.

  • Yikes, though I've been in a similar boat, working months on end, well over 70hours a week and even sleeping in my office some nights.

    I wouldn't do it again.

  • Yeah, the sleeping in the office stuff is hard. I was in a start up for 10 years (they were bought after 4 years) and I remember the guys sleeping under their desks in a fetal position.

    Memories of sleeping in the office chair brings back painful memories of severe neck cramps...

    3 years in a row, I arrived home to my wife and children at 6 am on Mother's Day after a marathon 36 hour work "day", just in time to make my wife breakfast in bed. I could never figure out why it was always on Mother's Day though...just coincidence I guess.

    Ugh!

  • j_e_o: I don't think this is always the case. You might need to find a different job. I'm actually really happy with my work/life balance, and I've made it clear to my company that my work efficiency drops significantly after about 45 hours a week. My job is very cerebral, and if I'm not focused, nothing gets done - simple as that.

    On the other end of the spectrum, there have been a time or two when I've been stressed and asked for a day off, only to be denied until I finish a certain project. The problem is, I needed the time off so that I could shed some stress and focus on the project. I probably spent a week longer on the project just because I was emmensely stressed. A single day of probably would have gotten everything done 4 days sooner.

    It cuts both ways. A good company will understand that what we do isn't something that can be done for 80 hours a week. Hopefully, they also understand that sometimes you just need to get away from a project for a minute in order to get some clarity. But sometimes, they forget that our job is much different than manual labor or sales jobs; "grinding through it" really isn't an option most times, and typically costs more in the long run.

  • I think from my perspective the move from programmer to developer changed as we moved away from mainframes to server based operations. A program just wrote code sure they would devlope screens that the user interfaced with but there was nothing graphical about it. The developer has to do alot more graphcal work and often has to be knowledgable about more than a single decipline. Let's take COBOL for example (and there is a shocking number of companies still using this) you don't refer to a COBOL programmer as a COBOL developer. but if you refer to a VB Programmer you often refer to them as a VB Developer.

    The move away from the mainframe changed the days when it was acceptable to write code in a single language structure with a flat ascii interface and the developer was born.

    Dan

    If only I could snap my figures and have all the correct indexes apear and the buffer clean and.... Start day dream here.

  • I worked at one of those places.

    I still remember the first day I started. My boss indicated this was a family friendly place; however, you were expected to work 50 hours a week or more.

    If you left more than 2 days in a row at 5:00, you caught crap in staff meetings.

    There was a 'constant reminder' if you dont' have xyz done by tomorrow, your replacement will.

    For 2.5 years I went along and worked like a dog. What finally sent me to the door:

    - I was late 2 days in a row ( 5 minutes, 15 minutes ). They had changed the freeway interchange into our office and that fubared traffic for several weeks with construction and changing how the lanes flowed. I don't mean a casual caustic comment, I mean a 20 minute dressdown that wen on longer than the amount of time I was late.

    - I had an emergency health issue come up, so I asked to leave 15 minutes early. On my way out the door, said manager told me I had to put in 4 hours vacation. I , of course, said your kidding me, right? No. I countered, you mean with all the overtime I put in, I can't get 15 minutes to leave for an emergency appointment with a doctor? Sure, if you take 4 hours vacation. So, I said o.k., I'll see you tomorrow at 11:45....And I showed up the next day at 11:45.

    - I had knee surgery that took longer to recover because doctor indicated my knee was worse than even the MRI showed.

    So I get back to the office a couple of weeks later than planned. First staff meeting, boss looks at me condesendingly and says 'for those of you who were here actually working and getting things done the past two weeks..."

    - The killer for me. We had a major hurricane beading down on our city expected to hit Monday/Tuesday afternoon. Naturally being close to the ocean, I was planning on spending the weekend getting my house prepped for the hurricane in the event we had a direct hit. No Mr. Boss man wanted me to come in the weekend and work on a project from another team that I knew nothing about ( I knew nothing about the code base, design etc. ). They were still planning on pushing said project out the door that Monday. At that point, I mentioned the fact that I had a house to get ready for a hurricane and I would be taking care of foster kids, elderly grandparents, etc. After a verbal tussle, I said, sorry this last minute request on a project, which I would normally come in on a weekend and work on, is overshadowed by the fact we're about ready to be possibly hit by a Cat 3 hurricane.

    After the hurricane, in the next staff meeting, I turned in my 2 weeks notice, job be damned.

    I still have to 'diplomatically' explain on many jobs apps why I had a gap in employment... You don't know how many times I grit my teeth and wish I could just tell the truth instead of dance around that issue.

  • ZETM, I fully believe in maximising strengths instead of minimising weaknesses, and in this case I don't think it's a flaw that you quit and had an employment gap.

    I'd be chin-up, saying "Yeah, I quit. I'll work as many hours as I need to get the job done, but I won't risk my family for it". Plus, you can say the gap really helped you recover from the strain of the job, and meant you were able to be much more effective in your next role. If somebody is unwilling to hire you because you quit in the situation you did, then they're probably the same sort of person who'll behave the way your old boss did. It also makes you more human too, which is great for interviews since it gives the interviewer a stronger connection with you, and that could be the difference between being first candidate and second.

Viewing 15 posts - 31 through 45 (of 46 total)

You must be logged in to reply to this topic. Login to reply