TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Programmers: Stop Calling Yourselves Engineers

43 pointsby duggieawesomeover 9 years ago

24 comments

imgabeover 9 years ago
As a licensed Professional Engineer and wannabe programmer, this guy should get off his high horse. There&#x27;s a difference between an engineer and a Professional Engineer. Much of the engineering industry, electrical, mechanical, chemical, etc. does not require licensure. It&#x27;s only needed in specific industries where engineering services are offered directly to the public. I don&#x27;t think anyone is confusing software engineers with PEs.<p>And building things in the public interest? Please. These things our built in our <i>client&#x27;s</i> interest. Yes, sometimes that client is &quot;the public&quot; in the form of a local, state or Federal government, but not always, and for many engineers, hardly ever. It&#x27;s also dubious that the government&#x27;s interest coincides with the public interest. I worked for a firm that bid on the contract to design the NSA&#x27;s 60MW datacenter in Utah. We didn&#x27;t win, but someone did, and they happily took the money to build it. Public interest indeed.<p>Yes, we recommend building things in sustainable, efficient ways whenever possible, but at the end of the day someone else is footing the bill. As long as they aren&#x27;t asking for something outright illegal or dangerous, they&#x27;ll get it. If they want to knock together a building that barely meets code minimum requirements, that&#x27;s what they&#x27;ll get.<p>&gt; Today’s computer systems pose individual and communal dangers that we’d never accept in more concrete structures like bridges, skyscrapers, power plants, and missile-defense systems.<p>It&#x27;s still pretty early days as far as computer systems go. It&#x27;s only a little over a hundred years ago that hundreds of people died in a fire[1] causing us to realize the egress doors need to always swing <i>outwards</i> and should not be locked. And that&#x27;s after how many millennia of building buildings?<p>We don&#x27;t accept these dangers now because we know what they are after people having died from them in the past. We won&#x27;t know what things we will need to watch for in computing until they happen.<p>[1] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Triangle_Shirtwaist_Factory_fire" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Triangle_Shirtwaist_Factory_fi...</a>
评论 #10530782 未加载
jozzasover 9 years ago
I&#x27;m a Software Engineer. It&#x27;s printed on my undergraduate degree, it&#x27;s on my business card, and it&#x27;s recognised by the engineering association in my country. So no, I won&#x27;t.<p>&quot;Traditional engineers are regulated, certified, and subject to apprenticeship and continuing education. Engineering claims an explicit responsibility to public safety and reliability, even if it doesn’t always deliver.&quot;<p>I DO have an explicit responsibility to public safety and reliability (it comes with the degree). I have to consider the implications of my work and could be held criminally liable for errors resulting in injury or death. If one was designing and building - or even updating - the software for a radiation therapy machine, for example, wouldn&#x27;t you want it to be that way? <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Therac-25" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Therac-25</a>
评论 #10530055 未加载
SirensOfTitanover 9 years ago
Google and Facebook, amongst others, have shown that the quick iteration strategy works, even for complex, critical systems. The key to success in that strategy is in good tooling--something that allows people to move quickly without breaking critical systems.<p>With that, understanding your goals is important in deriving strategy. Developing software for NASA space shuttles is going to be inevitably slower and more scrutinized than working on Google Music. Therein lies a traditional engineering problem of using the right tools for the job.<p>Software also does contribute to the public good in that an open-source mindset is built into the subcultures of the profession in general. It&#x27;s pretty cool that I can get involved in programming using free tooling from day one, where my friends in finance or more traditional engineering careers cannot.<p>Overall, the author feels like they&#x27;re arguing from some twisted version of the &quot;golden age fallacy.&quot; In fact, this seems like the same type of tired arguments I hear stipulating that video-games are not art: built as an argument from the old guard to bully the new kid on the block.
评论 #10532646 未加载
carsongrossover 9 years ago
<i>&quot;It undermines a long tradition of designing and building infrastructure in the public interest.&quot;</i><p><i>&quot;The traditional disciplines of engineering—civil, mechanical, aerospace, chemical, electrical, environmental—are civic professions as much as technical ones.&quot;</i><p>I would like to introduce the author to something called &quot;Open&quot; &quot;Source&quot;:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;explore" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;explore</a><p>The server that his article is reaching the world via is almost certainly running multiple pieces of infrastructure designed and built in the public interest, and given away for free.<p>Software suffers from being universal, inexpensive and omnipresent, so people notice all the crap (I certainly bitch about software quality myself) while ignoring the thousand miracles per minute that it provides for us.
d43594over 9 years ago
As any person will have observed more often than not accreditation proves little or nothing about anything. For example many corporations possess numerous different accreditations (some of which are industry specific) e.g. ISO:XXXXX, OHASA, Microsoft Gold etc etc etc. Most of these are simply seen by management functions as a box ticking exercise. The principles and most importantly mindsets evangelised by such accreditations are never enacted or held by those with the power to enact them. Perhaps this is a problem because for some reason management types aren&#x27;t seen to be a collaborative discipline, but instead a ruling one. Often engineers are at the behest of management decisions which tend to be based upon ill-conceived preconceptions, and poor and&#x2F;or politicised information. Ultimately more engineers need to hold management positions to ensure values are enforced and engrained within the culture of the organisation. To some extent accreditation is just advertising and brand image.<p>My house builder is accredited by X, Y and Z but their management and customer service is so poor that I fail to see how the business functions. I think this projects a some what idealistic view, not founded in reality.
kaymanover 9 years ago
I consider programmers as people who have learned the syntax of a language.<p>They did a quick &quot;Program in &lt;Language&gt; in &lt;X&gt; Days&quot;<p>They don&#x27;t understand too much about what&#x27;s going on under the hood. Just press this and it happens.<p>Software Engineers on the other hand have a deeper understanding of software. They have studied the field and learned how a computer actually works from the bottom up. They understand assembly language, state machines, data structures, algorithms.<p>A programmer has trouble adjusting to the technological landscape as it evolves. A software engineer sees the evolution and can see why solution y is better than previous or if it&#x27;s just marketing hype.<p>A true software engineer understands software is more than code.
geebeeover 9 years ago
Eh.<p>Ok, if you must, I actually agree that programmers should stop calling themselves engineers. Like I&#x27;ve said before here on HN, I don&#x27;t think it helps us (programmers). We should own our title and wear it with pride. Taking someone else&#x27;s title does two bad things - first, it opens programmers to the charge that they are insecure and are misappropriating someone else&#x27;s hard earned title and reputation. Second, it may give engineers (the PE kind) the impression that they have some claim on software development. That last part is important, because I would prefer not to see software regulated by the PE exams (though my objection to this diminished greatly when they went to much more industry specific exams).<p>I consider software development to be a genuinely difficult task, one that can push very smart people past the edge of their own capabilities. It can be intensely creative, and the stakes can be very high. However, I think we should just consider it to be its own thing.<p>Now, all that said, I&#x27;ll go back to my first statement: eh. In a world of train engineers, special effects or sound engineers, financial engineers, pft. Calling someone who reads a book on PHP (or buys one but doesn&#x27;t read it) and throws up a bug ridden website an &quot;engineer&quot; seems a bit of a stretch, but is it really so outrageous to call someone who has spend decades learning to design highly complex, scalable, performant software applications that need to be reliable in a high stakes environment an &quot;engineer&quot;? Is that really such an egregious use of the word?<p>Like I said, I&#x27;d rather software developers redirect that impressive accomplishment back to the word &quot;programmer&quot; or &quot;developer&quot;, but in the end, this whole thing is completely overblown.
greenyodaover 9 years ago
Extensive discussion from a few days ago:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10513499" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=10513499</a>
delinkaover 9 years ago
There&#x27;s a wide spectrum of capabilities within the set of People Who Can Command Technology. Similarly, there&#x27;s a wide spectrum of need in various industries for those people. When a company says they want &quot;software engineers,&quot; what do they mean? Do they just want coders? People who convert a diagram into code? Do they want someone who can design and implement every layer in their system? There&#x27;s no &quot;software architect&quot; degree. Nor a &quot;data[base] architect&quot; degree. Yet these are titles that individuals call themselves when they have certain skills.<p>Maybe instead of simply labeling the skills or the needs, we could spell out our experience (résumé) or requirements (job description.) But we still need a label to get the proverbial ball rolling, to pique the interest of employers and employees; something that says &quot;I know how to tell a computer to do what you want done.&quot;<p>&quot;Software Engineer&quot; sounds like a fine phrase for that.
lmorris84over 9 years ago
I normally just call myself a developer, although engineer is so widespread in the industry now I wouldn&#x27;t mind that either. I can&#x27;t look at someone with a straight face when they refer to themselves as a &quot;software craftsman&quot; though. I do think we need to reign in the job titles a little, many of them smack of one-upmanship.
评论 #10530237 未加载
leed25dover 9 years ago
First of all, most titles --but by no means all-- are bullshit. I prefer titles like {Junior, Senior, Lead, Chief} Programmer or Member of Technical Staff (I, II, III, ...}. Although I have been assigned titles like DevOps, Engineer, Developer and so on, my Linked In profile reads &#x27;Programmer&#x27;.
评论 #10529900 未加载
评论 #10529902 未加载
评论 #10530974 未加载
评论 #10530248 未加载
评论 #10529916 未加载
nabla9over 9 years ago
&quot;Engineer&quot; can be either degree&#x2F;qualification or position.<p>In software business there are no mandatory degrees, only positions. Person without formal education can be in &quot;chief leading senior engineer&quot; position if he has good personal track record.<p>Personally I like the word programmer more than engineer.
评论 #10529909 未加载
o2sd98over 9 years ago
Why Programmers are NOT Engineers (and that&#x27;s a good thing) ===========================================================<p>1. Engineers design and build the same types of things over and over again, from principles that have been developed, tested and put into practice over, literally, thousands of years. These principles are rarely expanded upon, and only after careful testing and proven performance. Programmers on the other hand consider building the same thing over and over again to fall in one of three categories (1) stupidity (2) ignorance or (3) market failure.<p>2. If an engineer builds two bridges of exactly the same specification, the cost of building the second bridge will be reasonably close to the cost of building the first one (technological advances and inflation not withstanding). If a programmer writes a useful program, and wants to share it with his friends and family, the cost of each additional copy of the program is fairly close to zero. Unlike the engineer building a second or third bridge, there is no need or reason for the programmer to create another copy of the software by designing, writing the code and compiling a second or third time.<p>3. Following on from (1) and (2) above, an engineer designs blueprints that describe _exactly_ how the structure is to be built, but a programmer usually has no idea how the program is to be built, because if s&#x2F;he did know, then it means someone has built this before, and therefore there is no reason to build it again, because the marginal cost of copying a previous design is zero. This tends to make the best programmers experimentalists (because the risk is small) and plagiarists (because the cost of copying existing designs is zero), and the worst programmers are those that think like engineers. Conversely, experimentation in engineering is discouraged, especially on things like bridges, because it is costly and dangerous.<p>4. But what about the domain known as computer security? Shouldn&#x27;t security be &#x27;engineered&#x27;? Yeah, good luck with that. People who crack computer security are nimble experimentalists. Because the cost of experimentation is so low, security cracking tends to be a never ending series of probes until a weakness is found. Protecting against that approach cannot be &#x27;engineered&#x27;, because the engineering process is one in which you plan for every known contingency. But if you knew every possible contingency, there would be no security issues, because they would all be covered off.<p>Sorry, the above is a bit rough. I&#x27;m still refining my ideas on the topic. Feedback welcomed.
jo909over 9 years ago
I sit in a chair, in front of a panel with many lights, and another panel with many buttons. And I press the buttons rapidly in some specific order to make certain lights go on or off.<p>No idea what should be the name for that job.
vereloover 9 years ago
I would argue that the issue is not with the &quot;programmers&quot; but HR. I&#x27;ve had people hand me offer letters with &quot;Software Engineer&quot; written on it, but i do not hold an engineering degree (and i didn&#x27;t ask for that title!)<p>Most of my Comp. Science friends have had the same experience, one went so far as to return the offer and replace the title with &quot;Computer Scientist&quot;.<p>So HR, please stop calling Scientists (or in my case, people with incomplete degrees), Engineers.
评论 #10535599 未加载
评论 #10535600 未加载
corditeover 9 years ago
We could call ourselves artists, gardeners, implementors, analysts, system designers.. All facets and analogies to what we do.
poelziover 9 years ago
I would also like if scientists which no understanding of logic apart of mathematical one and no understanding of philosophy of science would stop to call them self scientists (both are required to define truth value). Its not going to happen...
spacemanmattover 9 years ago
I consider my work (more debugging&#x2F;analysis than anything else) more related to plumbing than programming. Can I call myself a digital plumber?
评论 #10532897 未加载
1strangerover 9 years ago
It must be tiring living in a state of constant offense.
shillover 9 years ago
New title: Meatspace Engineer. Problem solved.
johanschover 9 years ago
Writer: Stop calling yourself a journalist.
vacriover 9 years ago
Similarly, an architect friend of mine is particularly annoyed that &#x27;architect&#x27; has been almost entirely co-opted by the software industry.
评论 #10529931 未加载
评论 #10530469 未加载
swagvover 9 years ago
It&#x27;s like it&#x27;s 1987 all over again
jecjecover 9 years ago
Thanks for the thinkpiece, Atlantic.