4 ms·
It's ranking according to skill level. 1. Software architect 2. Software engineer 3. Programmer 4. Coder The lowest level is the coder who only knows
by ninetyninenine 2y ago
It's ranking according to skill level.
1. Software architect
2. Software engineer
3. Programmer
4. Coder
The lowest level is the coder who only knows how to code.
When you go higher, you have the more elite "programmer" who does the exact same thing as the coder but is more elite because he calls what he does "programming" instead of "coding"
The next level is the Software Engineer who is even more skilled then the programmer because although he does the exact same thing as both the coder and the programmer he calls what he does "engineering" which he deems equivalent to what rocket engineers do when they "engineer" a rocket that flies into space, but instead of a rocket it's some website. Keep in mind that as amazing as rockets that carry humans into space are, it is not as amazing as some plain website because these "software engineers" likely get paid waay more then rocket engineers.
The final, highest level is the software architect who's power is so high he doesn't even "code", "program" or "engineer" stuff anymore. Instead the software architect has the skill of "big picture reasoning" which is the skill of being able to draw boxes and circles on a white board and also drawing lines between those shapes. This is what we term "software architecture" and this is the epitome of software skill. The software architect is basically a god among software engineers.
My goal in life is to become a master at drawing circles and boxes and lines. I admire these people so much.
- dudu24 2y ago> the programmer he calls what he does "engineering" which he deems equivalent to what rocket engineers do when they "engineer" a rocket that flies into space, but instead of a rocket it's some website. Bingo. The (very American) dilution of the title "engineer" has been sad to see.
- IshKebab 2y agoI wouldn't deify "real" engineering like that. It's different, and more regulated, but it isn't all harder and fancier than all programming. Find me a rocket scientist that could implement an unbounded model checker.
- anon291 2y agoIt's actually a really dumb post. There's a lot of 'real' engineering in software engineering if you step back from the latest web x.0 trends and go back to traditional software engineering (OSes, embedded, compilers, data structures, networking, etc). The problem here is that we conflate the 'latest app' (which is usually differentiated in its business model, not its software) with software development. Somewhere down the line business creation has become synonymous with software development. Of course, business creation is excellent, but it's not engineering.
- ninetyninenine 2y ago>I wouldn't deify "real" engineering like that. It's different, and more regulated, but it isn't all harder and fancier than all programming. Of course not! Software engineering is waaaay harder than rocket engineering. That's why there's so many rocket engineering bootcamps all over the place. Just grab some book or join a bootcamp and you can build rockets that fly into space in less than 6 months!! That's what I did, I was a major in poetry and I worked in HR. Then I joined a online bootcamp for rocket engineering and became a rocket engineer for spaceX in less than a year! I got super bored with it and I wanted to try software. When I did the switch to software engineering I couldn't find a single bootcamp in the country. You have to get a PHD in software architecture in order to do this stuff. Super hard! I'm now an expert at drawing lines and circles!
- IshKebab 2y agoIf rocket science were as cheap to practice and as in demand as programmers then there absolutely would be rocket science boot camps. There aren't, because the demand for space rockets is very low and they're extremely expensive.
- ninetyninenine 2y agoNo rocket science is harder due to tiered knowledge. Like physics or theoretical math you need foundations on top of foundations on top of foundations to learn. Software isn’t like this hence why boot camps are more possible. Advanced concepts in CS aren’t practical. Automata theory? Not needed. You literally don’t even need a bootcamp for software tbf.
- acyou 2y agoWell done, your categorization reminds me of grugbrain.dev.
- anon291 2y ago> which he deems equivalent to what rocket engineers do when they "engineer" a rocket that flies into space, but instead of a rocket it's some website. Keep in mind that as amazing as rockets that carry humans into space are, it is not as amazing as some plain website because these "software engineers" likely get paid waay more then rocket engineers. Not all software engineers write websites. I don't understand where in the lexicon this distinction has been lost. Also, there's a wide variety of website, some of which are just user interfaces for very complicated services.
- randomdata 2y ago> Not all software engineers write websites. Apparently it is also the case that not all HN commenters can spot a blatant joke.
- anon291 2y agoThis is a common enough sentiment around these parts though, and it deserves to be addressed.
- randomdata 2y agoI've never seen such sentiment outside of joking around, but even accepting your claim, who cares? What difference does it make?
- anon291 2y agoBecause websites et al fail a lot and a lot of software that runs invisibly does not. Typically engineering refers to something that works at a particular rate of failure (low hopefully).
- randomdata 2y agoOkay, sure, you alluded to that earlier... But who cares? Even if what you say is true, that does not give it significance. You somehow completely missed the question. Let me try again: Who cares? What difference does it make?
- marcus0x62 2y ago> the Software Engineer … does the exact same thing as both the coder and the programmer he calls what he does "engineering" which he deems equivalent to what rocket engineers do when they "engineer" a rocket that flies into space, While typing this comment, I hit a bug in my browser? phone? not sure which, but anyway, in the year of our lord 2024, showing an onscreen keyboard at the appropriate time is not yet a fully solved problem. Such is the rigor of our “engineering” discipline. > The final, highest level is the software architect who's power is so high he doesn't even "code", "program" or "engineer" stuff anymore. Why drive when you can be driven?[0] > My goal in life is to become a master at drawing circles and boxes and lines. A previous employer sent me to a multi-day whiteboard training class once. I’m not sure if they were really stupid, or if they just thought I was really stupid[1]. The people running the class were exactly how you would expect them to be. 0 - https://www.joelonsoftware.com/2001/04/21/dont-let-architecture-astronauts-scare-you/ https://www.joelonsoftware.com/2001/04/21/dont-let-architect... 1 - at least it wasn’t just me they sent, but also a few hundred of my coworkers.
- Nevermark 2y ago> showing an onscreen keyboard at the appropriate time is not yet a fully solved problem. Such is the rigor of our “engineering” discipline. Predating software touch keyboards, I await: 1. The ability to pay for something on the web without a reliably posted critical reliance on not hitting the back button. Someone should document the 5-why’s to a solution. (It might have ”stacked” up to 50-why’s at this point.) 2. For Apple TV to consistently fill in the about-movie blurb & pic (a few kay?) at better performance ratios than 1:1,000,000 relative to the speed & latency of the associated preview & video streams (geebees and also geebees). Did you know the casual verbal abbreviation of kilobytes is a tribute to Alan Kay, inventor of the first working ten-bit address register? /h These are my two long-time favorite canaries for some hoped for future deep software engineering progress. In the meantime, I try my best to laugh a lot and be grateful for what we have.
- Nevermark 2y agoI think of “software developer” as also including identification of software needs and matching product definition. “Developers” create value, I.e. they “develop” raw things. Not necessarily further up the skill mountain, but managing more of the economic to technical, back to economic, process stream. So maybe it’s a more encompassing general term, rather than a skill or activity pole position?
- itronitron 2y ago>> boxes and lines. Reminds me of sitting in a draft paper review in my adviser's research group in graduate school when his final advice to the authors was "and you need to add a figure with boxes and arrows in it"
- sgu999 2y ago> he calls what he does "engineering" which he deems equivalent to what rocket engineers do when they "engineer" a rocket that flies into space, but instead of a rocket it's some website What if it's embedded software that goes into, for instance, a rocket? Engineer? Or mechanical engineering that goes into a door knob. Engineer still?
- bee_rider 2y agoWhat does it feel like to have become the avatar of Poe’s law?
- d0mine 2y agoCoder / Programmer / Software engineer sound like synonyms. Architecture is just one the tasks that programmers perform. Places where somebody does architecture without programming are dysfunctional (anything takes forever).
- cptskippy 2y agoWhere does the Developer sit in that hierarchy?
- ninetyninenine 2y agoBelow engineer above progammer.
- Nab443 2y agoYou're missing the Lepidopterologist level.