3 ms·
First, I want to acknowledge that neither article was actually about who gets to call themselves a software engineer. That said, clearly that's all the HN comm
by swatow 12y ago
First, I want to acknowledge that neither article was actually about who gets to call themselves a software engineer. That said, clearly that's all the HN comments are going to be about , so I'm diving in.
I call myself a software engineer because it makes me feel smart and important. To me, that's the only difference between an engineer and similar jobs. I don't want to heap scorn on people who make sandwiches at subway, like many will use this discussion as an excuse for. Nonetheless, the reason the term engineer doesn't apply to them is that their job is neither important, nor requires a lot of intelligence.
Things like following a specific process, taking ethics courses, or being certified, are just things that some engineers happen to do. If you're smart and capable, you will do what is necessary to do the job well. Sometimes, this involves following a specific process, and sometimes regulation is necessary to ensure that everyone does this. But other times, individual judgement is the only solution. I believe this is the case for software engineering.
I don't really care about the word that much (although I really like calling myself and engineer), but what I do care is the implication that our industry needs to be regulated like professional engineers are. In fact, I'm opposed to all forms of organization, either unions or professional organizations, because they have nothing to offer the industry, and can do a lot of harm through rent seeking behavior.
I'm not opposed to regulation that forces businesses to protect user information better, or provide better privacy safeguards. But these are regulations of the business practices. I don't want to have to get a certificate for something I can read online, even if someone else worked really really hard to get their certificate.
- kd5bjo 12y agoI agree with most of what you say, but there has to be more to the definition of engineering than "important stuff smart people do". The best working definition I have comes by way of several of my college professors: An engineering problem is one in which you are given a set of requirements and asked to minimize cost; anyone who solves such problems is an engineer. Most subdisciplines of engineering have developed their own language and standards for how to specify the requirements, develop potential solutions, and analyze the cost of those solutions. In young subdisciplines, like software engineering, these can appear more like folk wisdom than rigorous processes sometimes; that doesn't mean they're not engineering, just that we still have a lot to discover about them.
- seabee 12y agoLest we forget, the first engineers relied on folk wisdom and empirical knowledge before rigorous processes and accurate physical models existed. That also means we have a few millenia of catching up to do!