I have rotated between countless titles over several decades. What I do hasn’t really changed. Currently I’m not even aware what my official title is and when someone asks I usually say something along the lines of I make IT go but in my native language.
Actually my title is “Senior Network Architect”. I hate it. I feel like it detracts from real architects, who have licensure and actual training from an actual school.
I hate it as an architect, and I hated it as an “engineer”, for the same reason.
Yes, there’s a lot of complexity and planning, especially at larger scales. But it’s mostly self-taught, some webinars, and a lot of on-the-job (read: trial-by-fire) training.
When it comes to telling computers what to do, I have no idea what to call it. I write Python scripts and Ansible modules, I guess. That doesn’t make me any of those titles though. Some times I poor-mans deamonize my scripts (while true loop) and pack them in a container.
Using some of the same tools doesn’t make me any more of the same title.
This is dangerous. The object might not have the crack() method, and this bloats the compiled size by a lot if you use it with different types. There's also no reason I can see to use concepts here. The saner way would probably be to use inheritance and objects to mimic Java interfaces.
Yeah, it’s weird to me as an engineer that when I’m on Lemmy people use that word to mean programmer. Nah, I work in a factory and had to learn thermodynamics
In my mind, the line is that an engineer is someone that can commit a crime by doing their job incompetently. If the only things at risk are your job and your pride, that’s a different thing.
“I program all day, so there’s a lot of trial and error. My friend is a negligent civil engineer, so there’s a lot of error and trial.”
If you’re an electrical engineer who works in a nuclear power plant and your incompetence leads to a meltdown, you’re going to go on trial. Possibly also if you’re doing software engineering for the control systems of that power plant.
If you’re a software engineer who works on Lemmy, not so much.
It’s always been weird to me as someone who isn’t an engineer in degree or title why those with degrees in engineering think people shouldn’t use an accurately descriptive word like engineer when it’s perfectly appropriate just because it’s a little to close to the title of their licensed profession.
Engineer is a verb, to devise or contrive something. Simply, to design a construct. A programmer by definition engineers a program and is therefore by the rules of the English language, an engineer.
They may not be a Licensed Professional Engineer, but an Engineer they remain.
But, we’re not talking about formal titles. We’re talking about job titles. I’ve never heard of someone called “Engineer Jones”, just “Mr. Jones who is an Engineer”.
If you’re a doctor of musical theory but you work in human resources as a clerk and someone asks you for your job title, you don’t say “Doctor Clerk”, you say “Clerk”.
So, if you’re trained as a Civil Engineer but you changed careers and are now writing javascript, are you a Software Engineer, whereas someone with a Computer Science degree can’t claim that title?
I draw the line at using just “Engineer”. The word Engineer has baggage, it means something pretty specific already. If you engineer something other than physical structures you should list what that something is, like Software Engineer or Network Engineer.
Train Engineer is a bit confusing because they also have historical claim to “Engineer” but no longer have the same electrical and mechanical education afaik. Correct me if I’m wrong!
Depends. I’ve studied for my engineering title, I have standards and ethics. Requirements, specification, design, architecture, programming, testing, integration, delivery, everything is part of my job. If you are a programmer, you only do programming.
Look at the state of software in the world. Even for Boeing standards, most software is abysmal. You can have personal standards all you want, if business daddy wants to deliver untested crap, I might object, but I can’t stop it and it’s usually not a hill I would want to die on.
That’s why I said it depends. If a billion dollar company decides to cut costs even more to gain more and more profits, they hire an army of codemonkeys in India and that is what you get.
If you work at a mid sized company interested in sustainable growth, you might get a software engineering position where you are the business daddy and if you say “I won’t deliver that untested” then it won’t be delivered untested.
I’m working at a company in Germany and we are leading in our field. I have one boss and he listens to what I tell him because he doesn’t have a clue about software engineering and that’s what he hired me and my team for.
Look into Agile, servant leadership and new work (the real stuff and not the garbage “hip” companies want to make you believe) if you want to understand.
It’s the old principles that kill companies like Boeing, because they think they can make big profits like it’s 1984 solely by pumping money into an army of wage slaves.
Look into “how a company works”, because that directly works against anything you say.
Not that I disagree with your ambition, I would like to only ship tested code. But if you’re working with deadlines and fixed budgets, that’s often enough impossible. I can’t even get a proper specification out of my clients, and even if they do, it’ll change in a week. You can be as agile as you want, if money runs out, there’s not much you can do.
I’d argue that if you seriously consider yourself a software engineer, and you take the “engineer” part seriously, you should be quitting and blowing the whistle if that happens. If you just go along with it, then sure, you’re not an engineer.
Dude, you’re living in fantasy land if you’re being serious. Engineers build all types of shoddy and dangerous crap just because they’re being paid to do it. Most of weapons manufacturing is mech eng. Almost no one is gonna quit their job over some ethical dispute, even if it’s costing lives.
The entire industry works on shipping duct taped products.
I do have my standards, but there’s a point at which you have to say “it’s good enough”. If someone’s at risk of dying or being harmed, yeah, that’s a real problem. If the application keeps crashing and loses the business money, that’s not my problem, I can only notify my superiors about my concerns.
My doctor’s digital prescription service has been ransomwared. It’s been a few weeks, and they paid the millions of dollars in Bitcoin or whatever, but it’s still encrypted and my doctor had to write me a prescription on paper.
The fact that a digital prescription service could have that happen is madness to me. The fact that they don’t have offline backups for prescriptions is insane. Yes, they could have been in there for a while, encrypting everything, but if the company had tested its backups they’d have found out immediately.
All of these are things that wouldn’t have happened if computing professions were held to standards.
Ok, sure. What standards? For fields like Civil Engineering it’s pretty easy to come up with reasonable standards. But, if a software engineer is writing a generic key-value store, how do you evaluate whether that item meets the required standards?
There are things that a developer can and should check to make sure his code is secure, but my focus is mainly on the systems and those can definitely be held to standards. Things like checking dependencies for known exploits, enforcing 2FA and TLS on all connections, encrypting data at rest, and testing backups, among a lot of other stuff.
I’ve worked with hundreds of organizations across many different industries in my career and almost none of them do all or even most of those, even if they need to be compliant for things like HIPAA or SOX. I once worked with an aerospace company whose sysadmin/webmaster/network guy was literally the founder’s son, who got the job because he knew how to make a web page.
But then it all circles back around. I have advanced degrees in (non software) engineering from actual top tier engineering schools and I should not be trusted to write production code. That’s what software engineers are for.
I disagree with that. I mean, I don’t know how good you are at writing software, so maybe you shouldn’t be allowed anywhere near production code. But, just because code is “production” doesn’t mean it should exclusively be the domain of people who are “software engineers”.
In my mind, software engineering involves implementing new algorithms that are from a computer science paper you just read, or architecting a big and complex system. Or, if there are lives on the line. I’d want people writing code for a new Space Shuttle to think of themselves as engineers, not just code monkeys.
But, a self-taught developer is fine to update production code for a web app as long as they write the correct tests and get it peer reviewed.
I’ve been a programmer my whole career, but some years ago my then-employer gave me the actual title of “visionary”. This caused me to immediately lose the respect of my coworkers, and after a few months it was obvious my employer was just preparing to get rid of me and replace me with H-1Bs.
programmer_humor
Active
This magazine is from a federated server and may be incomplete. Browse more on the original instance.