News for hackers. Stuff that matters.
Re:The shittiest project I ever worked on by fusiongyro on Wednesday September 25, 2013 @12:24AM (#6442624)
> In 1995 I quit my regular job as senior web engineer

You had the job title "senior web engineer" when the web was 4 years old. That's pretty cool.

Re:The shittiest project I ever worked on by adamconroy on Wednesday September 25, 2013 @02:21AM (#6442966)
Sorry if it reduces self-esteem, but we (software developers) are not engineers.

I've been brainwashed for many years by my brother, who is a Phd civil engineer, that professions that hijack the term engineer are kidding themselves.

I know it sounds cool, and my current title is 'Senior Software Engineer', but it is all a scam.

Re:The shittiest project I ever worked on by nostrademons on Wednesday September 25, 2013 @02:29AM (#6442992)
It's kinda ironic, but my girlfriend's business school classmates (most of whom are electrical, mechanical, or chemical engineers) seem to think that software engineers are at the top of the engineering totem pole. Something about being the only engineering subdiscipline that's paid what they're worth. If it's a scam, it seems to be working.
Re:The shittiest project I ever worked on by akg_67 on Wednesday September 25, 2013 @03:04AM (#6443091)
As a former chemical engineer, I agree with your gf's classmates. In late 90s, I was working on an advanced chemical manufacturing process control project with a team of software developers. I found out they were getting paid twice as much as me and they were half as productive as me (they knew nothing about manufacturing, chemicals and process control) and I was twice as stressed as them. The best decision I made was to dump chemical industry for technology industry soon after ... Never regretted.
Re:The shittiest project I ever worked on by bonemachine on Wednesday September 25, 2013 @02:10PM (#6446253)
Our salaries aren't a scam, per se. Just a reflection of a market equilibrium condition driven by classic rent-seeking dynamics:

  https://en.wikipedia.org/wiki/Rent-seeking
which don't apply as much to lower-demand professional categories.

Which isn't to say we aren't worth it; I'd like to think we are. Just that we often delude ourselves into thinking that our salary differential is linearly correlated with the economic "value" we generate. It isn't.

Or rather: the "value" of an engineer is a lot like the value of an apartment in a high-rent neighborhood: the price holds in the market because, well, you have to have it, and at (almost) any cost in order to do all the other stuff you need to do, like get around the city and be close to your job.

You also have to have access to food and safe drinking water -- even much more than you need a convenient or semi-stylish apartment. The priority for these isn't just a bit higher: it's categorically higher. Yet their base cost (i.e. the cost to obtain them at nominally satisfactory level) is an order of magnitude less than the cost of your rent.

The distinguishing factor between the two classes of goods is, of course, scarcity. That is why your rent is damn high.[1] And that's why an average software developer can earn twice as much as a decent chemical engineer, and an ungodly multiple of what a great public school teacher makes.

[1] Along with the fact that high-demand apartments -- like high-demand engineers -- are also, arguably, Veblen goods in some markets:

   https://en.wikipedia.org/wiki/Veblen_good
Re:The shittiest project I ever worked on by kabouseng on Wednesday September 25, 2013 @05:24AM (#6443466)
Or you could have moved to the petrochemical industry, where you would have been paid more than any software engineer anywhere...
Re:The shittiest project I ever worked on by nostrademons on Wednesday September 25, 2013 @05:40AM (#6443521)
Is that really true? This article [1] lists a top 10% petrochemical engineer's salary as $146,000. A fairly skilled senior software engineer at, say, Google can easily pull in $250-300K in total comp, and a programmer on Wall Street or independent consultant with good domain knowledge in wealthy industries like banking can pull in $300-500K/year. That's not even counting talent acquisitions, which can go for $1M/engineer/year.

[1] http://work.chron.com/salary-petrochemical-engineer-4334.htm...

Re:The shittiest project I ever worked on by eof on Thursday September 26, 2013 @03:12AM (#6449335)
yeah but those wallst and google jobs are not top 10%.. probably closer to top .5%
Re:The shittiest project I ever worked on by akg_67 on Wednesday September 25, 2013 @10:36AM (#6444802)
Actually, it was petrochemical company, one of the largest. And no, petrochemical industry doesn't pay much more than software profession.

Comparing with my friends who are still doing ChE jobs, If I was still in petrochemical, I most probably be getting paid little less than what I am being paid now, but working much more harder, longer and more stressed.

Re:The shittiest project I ever worked on by kabouseng on Wednesday September 25, 2013 @05:48AM (#6443545)
@Nostrademons

Ok clearly I am out of touch then. But seriously, how many SE really gets paid 250k+, even at Google? Quants is in my mind the same as the petrochemical industry tough, rediculous salaries so that one I can believe.

Re:The shittiest project I ever worked on by gohrt on Wednesday September 25, 2013 @05:38PM (#6447459)
Ones with about ~10 years good industry experience, or with several years of good Google experience+equity.
Re:The shittiest project I ever worked on by chetanahuja on Wednesday September 25, 2013 @04:15AM (#6443275)
"technology industry"?
Re:The shittiest project I ever worked on by chii on Wednesday September 25, 2013 @03:59AM (#6443232)
lol, so what were those software engineers being paid for!?
Re:The shittiest project I ever worked on by grecy on Wednesday September 25, 2013 @01:11PM (#6445826)
In Australia, my five year Bachelor of Software Engineering with First Class Honors was the first Software Engineering degree to be accredited by the Australian Institute of Engineers, of which I am a member.

So, yes, I am an Engineer.

Re:The shittiest project I ever worked on by hackula1 on Wednesday September 25, 2013 @12:36PM (#6445600)
I use the title that will make me look the best for the roles I am after. I currently have the title of Software Architect, which is probably about as pompous a title as it gets. To my clients, however, it conveys that I focus on large interconnected systems where the need is less about code and more about system design, and that equals more $ and more projects that fit my skill set. I could care less what a certified architect actually does. Nobody is asking me to design their house, and titles in the software industry are not yet standardized. It is not a "scam" to optimize your title for fit and profit (provided it is legal and is not completely misrepresenting what you do).
Re:The shittiest project I ever worked on by drone on Wednesday September 25, 2013 @09:50AM (#6444522)
Alas, here in Texas, it's illegal[1] to call yourself a Software Engineer without a PE certification. The decision came out in 1998/99, and you should've seen everyone scramble to change their business cards.

You can't even design an embedded electronics device for a 3rd party (for a company you work for, is ok - industrial exemption) or write software for the same without a PE.

[1] http://sce.uhcl.edu/helm/SWEBOK_IEEE/papers/10%20reprint%205...

Re:The shittiest project I ever worked on by yen223 on Wednesday September 25, 2013 @02:37AM (#6443026)
As a software guy who used to work in a factory alongside "actual" mechanical and E&E engineers, I daresay our goals and responsibilities are so similar, that we have every right to call ourselves engineers.
Re:The shittiest project I ever worked on by AndyKelley on Wednesday September 25, 2013 @02:24AM (#6442973)
I'm not convinced. Care to make a case?
Re:The shittiest project I ever worked on by weland on Wednesday September 25, 2013 @06:24AM (#6443639)
I am a programmer, but my diploma says Electrical Engineer. I actually majored in EE because I thought it would help me be a better programmer (and I think it did, but that's a story for another time). I actually did EE work, too, and continue to do so sporadically, but I only tackle tasks where I can't screw up any actual EE's work. I know my fundamentals and have some design experience, but since I spent most of my career doing (admittedly, low-level) programming, I'm no match for someone who spent most of their career doing circuit design.

The whole frame of mind in which I do EE is incredibly different from the one in which I do programming, to the extent that, for much of my early career, there was simply no way I could do both of them efficiently during the same day. The time of context switching was, literally, a good night's sleep. There are marked differences; the ones that spring up immediately are:

1. I spend a lot of time doing actual computation, optimizing my design on paper and attempting to predict interactions that occur due to reality not being quite like its ideal model. Some of the younger engineers frown upon this (mostly because they suck at math and think theory is for bookworms), but it's very productive once you manage to do it right.

2. Even when specifications are complete and respected to the letter, there are still differences between what you specify and what gets built. There are technological variations you must account for.

3. Better yet, you always need to bear in mind the limitations of the manufacturing process for what you design. When I think about how I'll write something, my own ability to code is literally the only limit I have to deal with. There are, of course, hard limits due to the constraints of the platform you work on (e.g. there is some hard limit to how much code you can fit in 16K of flash), but these are of a very different nature compare to manufacturing constraints. Designs must account for the limits of your technological process (e.g. you may not be able to mount some types of components on a PCB), and they must also ensure manufacturing is feasible and scalable (something called DFM -- Design For Manufacturing -- which I have screwed up a couple of times, due to my inexperience).

Overall, there's a huge gap between how much intuition and craftmanship I put in each activity.

I'm not saying this disqualifies programming as an engineering discipline; such differences may also exist between other engineering disciplines I have no idea about.

I, for one, tend to frown upon it being called "software engineering" though, mostly in virtue of these differences. I don't consider the term "software development" demeaning -- in fact, I prefer it, and I always present myself as a programmer and my job title as "software developer", even though I'm legally allowed to call myself an engineer.

Re:The shittiest project I ever worked on by adamconroy on Wednesday September 25, 2013 @03:02AM (#6443085)
Well it is really just semantics, so there is no right or wrong, and anyone can define what particular words mean to them.

But there are a couple of things that make me personally think software engineering is a misnomer.

Firstly, traditional engineering disciplines are generally pretty black and white. It is applied maths and science. If you build a bridge, you can use physics and maths to pretty much prove that it will handle a particular weight/load and so forth. Software development is rarely like that, and even if you are writing software for an engineer and therefore you could argue that you can prove the calculations the system is generating, it is really the problem domain that is engineering but the way the software is put together is not so easy to prove.

Secondly, I think the term actually does us a disservice. Software development requires intuition, craftsmanship, pragmatism, determination, adaptability, artistry. It also often requires understanding human nature, empathy for users, being able to learn and understand endless problem domains, an eye for the aesthetic. All of these things aren't generally required for traditional engineering disciplines.

Re:The shittiest project I ever worked on by Daniel_Newby on Wednesday September 25, 2013 @03:33AM (#6443159)
The distinctions you are making are mere tendencies. Automotive engineering, for instance, requires everything on your list of software development traits—in spades.

I would say that the essence of engineering is a devotion to verifying that the design works like you think it works. Software development often lacks this devotion, but when it is there it is entirely proper to call it software engineering.

Re:The shittiest project I ever worked on by consultant23522 on Wednesday September 25, 2013 @01:19PM (#6445886)
I think the big difference is that the civil engineer doesn't actually lay the cement himself, but the software engineer does. This has a lot of ramifications about how each approaches the problems and sees themselves in context.
Re:The shittiest project I ever worked on by Dewie on Wednesday September 25, 2013 @05:20PM (#6447360)
Some would argue# that the compiler lays the cement.

#have argued, actually

Re:The shittiest project I ever worked on by chii on Wednesday September 25, 2013 @04:02AM (#6443238)
i suppose there aren't very many software engineering fields (and most of them really are just computerized extensions of physical engineering).

That's why i call it software development, and i m a software developer.

Re:The shittiest project I ever worked on by nostrademons on Wednesday September 25, 2013 @06:21AM (#6443628)
There are plenty of different software engineering fields, it's just that it's usually just called "domain knowledge" and nobody outside the field makes the distinction.

One of my internships was at a company that did avionics software. Avionics is about as different from Web 2.0 startups as you can possibly get and stay in the same industry. There are very rigorous traceability metrics that pretty much dictate exactly what can go in the software. Every line of code has to be traced back to a particular paragraph in the design doc, which has to be traced back to a particular numbered requirement. Oftentimes garbage collection or even heap allocation is banned to avoid unbounded pauses in execution time. So the behavior of the code is fully specified under all conditions, and often formally verified. This was the one place I've ever worked where I'd hear "So we should write it in Ada then?"

I've also worked in the financial industry. Little known fact about the financial industry: it's not one industry but many. The code that you'd use to build a quant trading model is very different from the code you'd use to build a retail banking portal. The former actually tends to look a lot like academic research code (i.e. a software engineer would consider it shitty, but it has impressive math and gets the job done).

I work in consumer web now, but at Google. We actually do care about latency, and CPU load, and memory consumption, and developer productivity. And so it actually ends up being a lot like real engineering, where you perform experiments to measure the performance of the building blocks you're using, carefully consider goals and trade-offs, make estimates and back-of-the-envelope feasibility studies before implementing, and then rigorously test that solution.

This is in complete contrast to when I had my own casual gaming startup, where neither performance nor reliability mattered all that much, the only thing that did was the user interface.

Re:The shittiest project I ever worked on by kabouseng on Wednesday September 25, 2013 @05:29AM (#6443483)
Its rather a case of each engineering profession is a regulated industry with an accreditation body, that certifies you as an engineer. Mechanical, electrical, electronic, chemical, industrial, civil, all have standards organisations, usually different ones in each country.

See IEEE for instance...

Also the engineer term is a protected designation in many countries, just as doctor and laywer is...

Re:The shittiest project I ever worked on by briancpotter on Wednesday September 25, 2013 @11:55AM (#6445336)
The degree of responsibility is vastly different. Engineers are licensed, and can (and often are) sued for professional negligence. Failing to do your job adequately means you'll be stripped of your license and prevented from practicing engineering.
Re:The shittiest project I ever worked on by hackula1 on Wednesday September 25, 2013 @12:39PM (#6445613)
No, only certain fields of engineering are licensed and regulated. Those include Structural, Chemical, Mechanical, etc.

Others are less rigorous, but can still are the practice of engineering. Software Development is one of those.

Re:The shittiest project I ever worked on by dsuth on Wednesday September 25, 2013 @11:01PM (#6448684)
This is the best answer I've seen (speaking as a control systems engineer who develops industrial software for a living), and a big part of the reason I'm not keen on software developers calling themselves engineers. When your software crashes and causes $XMM worth of damages, injury or death, and you're held personally liable for that in a court of law due to your status as an engineer, then I'd be willing to accept the Software Engineer title.

The title implies a certain amount of rigour and due diligence being applied at all stages of a design, as well as compliance with all relevant standards and regulations. This is audited by certification bodies and explicitly stated by your signature on any document or code you sign off on.

Personally I think this is somewhere that software development could head in the future, but there seems to be too much disagreement on coding best practices to standardise them, and anyway I doubt most people would be willing to pay the cost associated with this, for the majority of software.

Re:The shittiest project I ever worked on by zizee on Wednesday September 25, 2013 @02:29AM (#6442994)
Whilst all people who have the title "Software Engineer" are not engineers, it does not mean there are no Software Engineers.
Re:The shittiest project I ever worked on by OlivierLi on Wednesday September 25, 2013 @08:07AM (#6444000)
I like the way it works here in Québec. To hold the title of Engineer one has to have an actual engineering degree.

For example I am getting a "Software Engineering" degree. It has all the same math and science classes as other engineering majors.

If I ever want to use my title as engineer I will be held to the same standards as other engineers.

https://en.wikipedia.org/wiki/Software_engineering_professio...

Re:The shittiest project I ever worked on by fusiongyro on Thursday September 26, 2013 @01:59PM (#6452465)
It would only be a scam if anybody but engineers thought there was a real distinction here. But nobody is, and the language is defined by use. This tiresome argument is never raised by "real" engineers, just software engineers who feel like impostors. Relax. You're not scamming anybody.
Re:The shittiest project I ever worked on by SomeCallMeTim on Wednesday September 25, 2013 @01:14AM (#6442775)
I had a "Senior Software Engineer" title after only about 2-3 years of real-world programming experience, at age 23 or so. I had shipped a couple games as lead by then, so it wasn't entirely unearned.
Re:The shittiest project I ever worked on by EnderMB on Wednesday September 25, 2013 @05:49AM (#6443551)
I started out at a non-technical startup that was pushing a technical tool as its main product. Out of a team of three developers, I became the Lead Developer, despite having barely a year of experience, simply because I was the better programmer and was willing to call management out when they tried to make technical decisions. I was offered a choice of "Senior Developer" and "Lead Developer" and went with the lead role because I didn't feel very senior.

In reality, I was barely a junior dev, and being in charge of a site that's getting millions of views was absolutely terrifying. In some ways, it was one of the best training exercises I could have. It forced me to learn things, and to learn them well. It was also total bullshit. My pay wasn't that great, and although I was working in a startup that was slowly becoming technical, had absolute control over technical decisions, and was able to turn a company that struggled with FTPing to a server into one with automated builds, regular code reviews using a new source control system (Git), and much more, it still highlighted more than anything that I really didn't have the slightest clue what I was doing.

It really couldn't have gone better for me. The company was acquired, and I landed a job at a great agency, and was able to work on enough projects to actually know what I was doing, and to see what good code looks like. I'm a mid-level developer now, with much better pay, but instead of looking back over old code and laughing, I tend to look back over the time where I led the technical side of a startup and laugh.

Re:The shittiest project I ever worked on by SomeCallMeTim on Thursday September 26, 2013 @01:41AM (#6449119)
Congrats! Sounds like quite a ride. :)

Can you believe that when I started, barely anyone used source control? That's what jumped out at me about your story, oddly enough. When I started the Web hadn't been invented, and the only version control packages were CVS and commercial options. CVS sucks, in case you're wondering. So did most of the commercial options.

In my own case I'd been programming and writing games for fun since I was 14, so by the time I took my first job at 22, I'd already been coding pretty regularly for 8 years. Some of that was actually for-pay, though only a few months worth. So between the experience I did have and my oversized ego, I pretty much expected the "Senior" label.

Re:The shittiest project I ever worked on by chris_wot on Wednesday September 25, 2013 @04:49AM (#6443363)
I was senior consultant, but for a two man organisation. The other man was the owner. Later on he told me I wasn't up to standards to be "senior" consultant.

He then became the sole member of the business :-)

Re:The shittiest project I ever worked on by enneff on Wednesday September 25, 2013 @01:46AM (#6442867)
But I'm sure software had existed a long time before you started. The GP's point was that being a "Senior web engineer," when the web itself has only been around a few years is impressive.
Re:The shittiest project I ever worked on by PeterisP on Wednesday September 25, 2013 @09:00AM (#6444242)
I'd say that it is trivial - if a new topic starts and is rapidly growing, then after 3-4 years almost anybody who started working on it near the beginning would be better than 99% of everyone else (simple 99% of others are newbies in the are), and his/her tasks would include a say in 'how it should be done' and mentoring those others - so, Senior xxx.
Re:The shittiest project I ever worked on by gcb0 on Wednesday September 25, 2013 @12:47AM (#6442696)
US corporations tend to do that. Instead of a big raise, small raise and "senior". That can even be negotiated in hiring, so you may join as senior for a position just created in the market.
Re:The shittiest project I ever worked on by jpmatz on Wednesday September 25, 2013 @01:53AM (#6442884)
Not only in the US, unfortunately. I've even seen company creating other kind of superlative, when lead, senior, manager or director was taken. What about "International Senior Art Director" (even if your job is basic graphic designer in a 25 persons company) ?
Re:The shittiest project I ever worked on by bonemachine on Wednesday September 25, 2013 @05:12PM (#6447324)
You had the job title "senior web engineer" when the web was 4 years old. That's pretty cool.

Well normally they only hired people with 6+ years of solid web development experience as senior engineers (just like no one today would think of hiring a senior Node.js developer with less than 5 years under the belt). But they decided to give the article poster a break for his people skills and Team Player potential.

Re:The shittiest project I ever worked on by kjackson2012 on Wednesday September 25, 2013 @02:28AM (#6442986)
I find it hard to believe. In 1995 people barely knew what the internet was. I was accessing the internet through Trumpet Winsock on Windows 3.11 and had a 14.4k modem.

The idea that Time Warner already had a sophisticated Web division smells like BS to me. I would accept 1997 or 1998, but not 1995.

Re:The shittiest project I ever worked on by neilk on Wednesday September 25, 2013 @02:36AM (#6443017)
It was called Pathfinder, and it launched in 1994.

https://en.wikipedia.org/wiki/Pathfinder_(web_site)

It was not sophisticated by today's standards, but it was one of the first real magazine sites on the web. Here are some screenshots.

http://www.disobey.com/ghostsites/pathfindermuseum/index.sht...

Re:The shittiest project I ever worked on by perfunctory on Wednesday September 25, 2013 @03:15AM (#6443119)
How old is 'big data' thing? Would you be surprised to see a 'senior big data engineer' title these days?

> The idea that Time Warner already had a sophisticated Web division smells like BS to me

the title 'senior' doesn't imply the division was sophisticated. If something smells like BS, doesn't mean it can't exist. There is a lot of BS around.

Re:The shittiest project I ever worked on by pjc50 on Wednesday September 25, 2013 @03:27AM (#6443146)
It's a rank indicator, not about experience. Also, fancy job titles are free employee motivation.
Re:The shittiest project I ever worked on by GFischer on Wednesday September 25, 2013 @08:46AM (#6444182)
"Give me enough medals and I'll win any war"

attributed to Napoleon Bonaparte

Re:The shittiest project I ever worked on by mk270 on Wednesday September 25, 2013 @04:53AM (#6443378)
The Emperor has spoken.
Re:The shittiest project I ever worked on by chris_wot on Wednesday September 25, 2013 @04:51AM (#6443374)
You call that sophisticated?