Programmer vs software engineer
-
I continually have to check the details of syntax and stuff when programming. Things like print format specifiers, the syntax of things I havent used for a year or so, and use a calculator to work out bit masks and check my bit wise logic. I can never get it right in my head. I dont remember details. I dont pride myself on that. I spend my time and energy on the big picture. Designing and understanding complex mechanisms. The architecture. The guts of the machine. So I think of myself as a software engineer, not a programmer. How about you lot?
Started as a programmer, learning the skill of coding, but gained appreciation for software engineering in grad school, where very large problems were decimated down into little chunks that even I could understand better. Then I could see that coding within the context of an engineered plan was more pleasant. I could leverage the help of others without breeding discontent and chaos. Each skill uses different parts of my brain, and each can be enjoyable.
-
Programmer. "Software Engineer" is a contradictory term. If engineers designed machines the way programmers write software, civilization as we understand it would collapse in a couple of hours.
-
And if we programmers develop software like engineer develop machines, we would still be using computer in command lines.
Excellent!!
-
When they said I was a programmer I worked daily in 2 languages while I knew to varying levels about 5. I used printed manuals since that was all I had available, no google, no web, the index was your friend and remembering was faster. Then they labeled me a developer, I was working daily in about 4 languages and knew many more. The web was just beginning so it still wasn't much use and there was still books and man. Now I am an architect, there are no printed manuals. I can be working at any time in any of around 10 languages. I now realize that all languages are basically the same, except for prolog. Now I think more along "I want to do foo, I have to use language bar, how do I do foo in bar?" Somewhere out on the web somebody has probably done foo in bar or at least something close enough to figure out the rest of the way. I use a calculator for bit masks over 8 bits, I use a regex tool rather than stare at the ceiling. I spend a lot more time thinking about how to make the resulting code/arch understandable to the next person who has to look at it. There are better things to do with my memory and time than tracking the various shiny objects in the field, knowing that I need to do foo is more important. I use the term software engineer to describe myself to people who ask but won't understand. In my head I am just a person that fixes things.
:) Glad some one sees it the same way I do! I put together the most trashy code, almost psuedo code, then let the compiler tell me where my syntax is wrong. Still, doesnt stop me creating great products!
-
I continually have to check the details of syntax and stuff when programming. Things like print format specifiers, the syntax of things I havent used for a year or so, and use a calculator to work out bit masks and check my bit wise logic. I can never get it right in my head. I dont remember details. I dont pride myself on that. I spend my time and energy on the big picture. Designing and understanding complex mechanisms. The architecture. The guts of the machine. So I think of myself as a software engineer, not a programmer. How about you lot?
I am a senior software engineer. That is according to the company for which I work. Daily, I am using reference resources from the web (Google search, Stack Overflow, Code Project, and so on) to paper and book (real, technical books, reams of print-out code listing or requirement documents, or virtual paper as in Kindle or PDF). I've been doing this stuff since the early 1980s. I'm in my 50s. I see the big picture. Many changes have come and gone in our industry of software science. I try to be agile. I call myself a software and systems solutions engineer.
-
There's a lot of us out here.
the not so silent majority...
At 75 I thought that I was the oldest coder in the World. I tell my clients "I can still do it.. if I just didn't look so old."
-
At 75 I thought that I was the oldest coder in the World. I tell my clients "I can still do it.. if I just didn't look so old."
At 75, you probably are the oldest. I'm only 68.
-
Chances are you're just getting old then brother. ;P
Jeremy Falcon
Jeremy Falcon wrote:
Chances are you're just getting old then brother. ;-P
Hey! I resemble that remark! ;-)
If you think hiring a professional is expensive, wait until you hire an amateur! - Red Adair
-
Jeremy Falcon wrote:
Chances are you're just getting old then brother. ;-P
Hey! I resemble that remark! ;-)
If you think hiring a professional is expensive, wait until you hire an amateur! - Red Adair
:-D
Jeremy Falcon
-
I continually have to check the details of syntax and stuff when programming. Things like print format specifiers, the syntax of things I havent used for a year or so, and use a calculator to work out bit masks and check my bit wise logic. I can never get it right in my head. I dont remember details. I dont pride myself on that. I spend my time and energy on the big picture. Designing and understanding complex mechanisms. The architecture. The guts of the machine. So I think of myself as a software engineer, not a programmer. How about you lot?
I wrote about this very topic a while back. Software Engineer Vs Programmer[^]
-
I'm 68, down several teeth (my dad never left me anything but his crappy brittle teeth), and teaching myself C# as I convert my VB6 code to it. It does not get any better.
Getting old is hell, but it does beat the alternative...
After 52 years of writing computer programs in various languages across various platforms, I still get the same kick out of watching code run as I did when I started. I'm proud to be a "Programmer" although I moved into "Consultancy" and "Management" for the sake of my career. I never stopped writing code or learning new languages and concepts and I believe I'll be writing code as long as I can see and type. (I still have all my own teeth, but I invested a lot of money in crowns over the years...) Programming is about an attitude to problem solving and being determined to make something work; it doesn't matter whether you call yourself a "software engineer", a "programmer", a "code jockey" or a "computer geek"; if you will visualize a process and create it in working code, you are a "programmer".
Pete Dashwood
-
I wrote about this very topic a while back. Software Engineer Vs Programmer[^]
Very good analysis. I am an ex mech/aero engineer. I would no more expect to remember the thread pitch of an M8 fine than the minutae of a language, or a parameter variable. I work at a far higher level than that, designing the complex mechanisms that are composed of software.
-
I continually have to check the details of syntax and stuff when programming. Things like print format specifiers, the syntax of things I havent used for a year or so, and use a calculator to work out bit masks and check my bit wise logic. I can never get it right in my head. I dont remember details. I dont pride myself on that. I spend my time and energy on the big picture. Designing and understanding complex mechanisms. The architecture. The guts of the machine. So I think of myself as a software engineer, not a programmer. How about you lot?
You have a mind like a sieve for facts, just Like Einstein. when you programmed a Z80 with Op Codes, you had them memorized. Back then, you were a 'programmer'. Then came 5 volume Turbo-pascal API for windows 3.1.. The first of many bloated APIs and Dozens of languages ;C++, C, Java, C#, Ruby, Python, Go, Node.js All the meaningless details and irrelevant syntax has been discarded by your brain. You have distilled out an understanding of software structure and design common to all architectures. You now float above most humans like a zen-guru. Your code requires a function pointer ? How that is done exactly, is a job for google, and the auto-complete of whatever IDE you happen to be using. Details like that are for code-monkeys and programmers. not you. your mind contains the pure design, The Plot of the story; The essence of the characters. Language is irrelevant now.. you have become a Software engineer.
-
You have a mind like a sieve for facts, just Like Einstein. when you programmed a Z80 with Op Codes, you had them memorized. Back then, you were a 'programmer'. Then came 5 volume Turbo-pascal API for windows 3.1.. The first of many bloated APIs and Dozens of languages ;C++, C, Java, C#, Ruby, Python, Go, Node.js All the meaningless details and irrelevant syntax has been discarded by your brain. You have distilled out an understanding of software structure and design common to all architectures. You now float above most humans like a zen-guru. Your code requires a function pointer ? How that is done exactly, is a job for google, and the auto-complete of whatever IDE you happen to be using. Details like that are for code-monkeys and programmers. not you. your mind contains the pure design, The Plot of the story; The essence of the characters. Language is irrelevant now.. you have become a Software engineer.
Yep, spot on. The older and more experienced you get the more you move away from trivial details and implementation and gain the ability to hold complex mechanisms in your mind, in such detail, that you can see them functioning with all the required states and synchronisation.
-
Same with me. There's so much crap to keep track of nowadays I think it's better to understand principles and Google the detail specific stuff as needed. Because as sure as the sun rises in the east, there will be some new fancy buzzword come along every other day that we're expected to magically know just because it's the next shiny red button to come along.
Jeremy Falcon
Instructors in schools and universities need to realize this. I agree completely.
-
Instructors in schools and universities need to realize this. I agree completely.
Realize that where all getting old? :-D
-
No, but go ahead, sounds interesting.
UK. It's required by law, but not regulated by it. It discriminates based on gender, marital status, age, and other non-protected characteristics like profession. The formulas determining how much you pay are completely opaque and likely arbitrary, with no limits as to maximums as far as I can tell. If you're a single male who learns to drive in his mid 20's, (hi), with no parents whose car upon which to take out a shared policy, you're going to be paying what is likely 6-8 times the _cost of the car_ for your first year's insurance, and the second year isn't much better. If you go for several years without making an insurance claim, you pay less for insurance the next year, which _disincentivises_ using your insurance, meaning if you get in a bump with someone, it's _usually_ better to privately sort the repair costs, COMPLETELY sidestepping the legal protection and ease of life insurance is meant to provide you.
-
I continually have to check the details of syntax and stuff when programming. Things like print format specifiers, the syntax of things I havent used for a year or so, and use a calculator to work out bit masks and check my bit wise logic. I can never get it right in my head. I dont remember details. I dont pride myself on that. I spend my time and energy on the big picture. Designing and understanding complex mechanisms. The architecture. The guts of the machine. So I think of myself as a software engineer, not a programmer. How about you lot?
Definitely a programmer here. I'm the weird type. I can see the big pic and program in any language as long as I know the verbs (which I can google). I know how the computer works, and can make it scratch it's fleas if I want. Getting old, but still loving it. Passed it on to my son and now he's hooked. He's gonna be a Game Designer in 6 months or so.
-
I continually have to check the details of syntax and stuff when programming. Things like print format specifiers, the syntax of things I havent used for a year or so, and use a calculator to work out bit masks and check my bit wise logic. I can never get it right in my head. I dont remember details. I dont pride myself on that. I spend my time and energy on the big picture. Designing and understanding complex mechanisms. The architecture. The guts of the machine. So I think of myself as a software engineer, not a programmer. How about you lot?
Personally I consider "software engineer" to be a case of buzzword bingo, just like "software developer" or "rockstar". Before these fluff phrases came into existence, "programmer" implied not just syntax and "details", but also spending time considering the big picture. Honestly, since when did programming ever *not* involve "designing and understanding complex mechanisms. The architecture. The guts of the machine"? It *always* meant that. Don't let recruiter-speak diminish the meaning of "programmer".
-
It not just fancy new stuff with me, it is stuff I have been doing for 20 years I forget the details of. I had to look up how to write a function pointer and pass it in an argument the other day! :)
Engineer is one who can see the "big picture" and build an application, since an application is the inter-workings of hundreds of algorithms, a programmer is one who can code the algorithms that are needed to work together to build the application. We find we can find a lot of good programmers, but, it is very hard to find people that are good engineers...start with a blank canvas and build something. As for age, the good news is everything is online today! If you forget a function and how to use it, simply use Google and up pops the solution and hundreds of examples. It is much easier to be a programmer these days because you simply don't have to remember anything. I remember 20+ years ago we would even give quizzes to prospective programmers to see how many commands and functions they knew, using the logic that the more they knew the faster the could work since they wouldn't have to constantly look commands up in a reference book. But, today, it simply doesn't matter...in fact it is actually good when they look up things on Google because it shows them command they are searching for and algorithms that use the function in ways they maybe hadn't thought about.