A friend and I were discussing recently the interesting phenomenon where despite us having highly unrelated jobs/passions with unrelated skillsets, we are both considered “software engineers” because we happen to write code. I believe this happens because when, say, family asks what we do, it usually feels like they’re mainly interested in the day-to-day as opposed to the core purpose of the work. This makes perfect sense and is fine, but between two people who write code it is probably reductive communication.
This prompted us to strip back the code-writing part and come up with a new job title for each of our occupations; my actual job, and his primary interest. The new titles were far more descriptive of the core work we both do that is probably more salient on a fundamental level than the programming part.
Mine was “software engineer” -> “video compression researcher” His was “software engineer” -> “web platform designer/developer” (using developer in the name still feels like cheating, but we couldn’t think of anything else)
SWEs (or CS students): Do this for yourselves. What does this look like for you?
See, at my job it’s the other way around. I am responsible for:
- Solution architecture
- Cloud architecture development
- Cloud infrastructure design and implementation
- Data model specification
- Database schema design
- Database administration
- Data cleaning and data review
- ETL
- Server administration
- Web framework developer
- Frontend developer
- Backend API developer
- Mobile app developer
- Documentation author
- Troubleshooting
- Maintenance
Also I have involvement in: Stakeholder engagement, user education and training, project management.
I do the work equivalent of around 3 full-time engineers. So to keep it simple, we call my position just “senior software engineer”. I like your idea of disambiguation to better communicate exactly what you do, but I don’t know what you’d call me.
In Germany we call you a “Mädchen für alles”
screen looker
Lead googler
Yaml editor? Business therapist? Email author? Paid meeting actor? Scrum participant? Office cynic? Idk.
These are job titles I’ve actually used:
- Brain for Hire
- Elephant header
- Janitor
- Troubleshooter
Over the past 25+ years I’ve worked for myself and whilst doing the exact same job, fixing complex ICT problems for my clients I’ve had to complete job title fields in countless corporate forms.
It’s fun to interact with colleagues who get the joke and hilarious when they don’t.
I would be a cook. I love food.
Software Diagnosticist, maybe?
My main role lately has been to jump into failing projects and put them back on track, then leave it back with its own team. Sometimes I’m debugging software, other times I’m “debugging” processes or even team structures. Occasionally even the whole idea behind some project is just messed up and nobody realized.
That sounds pretty cool, I could imagine myself doing that.
How did you get into such a role? Is it some kind of consultancy?
It happened by chance the first few times. Projects were failing and management wanted more resources, I was assigned and noticed problems that hadn’t been noticed. After a few different projects with different issues, I became the default guy to call into ongoing projects. At the time I had already rejected a few promotions because I didn’t like any of the other roles above my position, so I eventually asked management to create a new role for me based on that.
Nice! That also needs some reasonably good management to see your skills and talents.
Can totally see why you might not like roles “above”. There’s always some point where you stop solving the kind of problems you find interesting and have more bullshit to fight than it would be worth.
Like my team lead wisely said, “never become a team lead”, and I’m absolutely not interested, seeing all the crap he has to out up with, manage and firefight (I’m happy he does it while I can stay pretty relaxed and keep doing all the fun stuff).
I suppose the same can be said for authors.
You could be an author who writes epic fantasy novels. Or an author who writes high school text books. Or an author who submits science journal articles. Or an author who writes video game walkthroughs.
Yeah, “author” makes the most sense. They’re usually pro-grammar.
My last job was: PowerPoint presentation and poster designer, educator, communicator and mind reader.
Tried to be software developer in science, turns out that I had to spend much more time promoting whatever little coding I do to interested parties, and creating software based on guesses what they could need and what the right thing probably should be.
It was a mess, for many reasons.
Now I’m an actual software architect and engineer.
As a metaphor, somewhere between apprentice dark magician (when sprinkling in some fancy things not many others would be able to do), gardener (need to clean up a lot of weeds, tidy up and revitalize the decomposing codebase, trim some rotten code branches) and strategist (when conceptually working on the mid and long-term planning and high level goals).
Oh dang, last year I left a job I was in for 8 years, where I was writing software for scientists and researchers (or attempting to). You do spend a lot more time in meetings discussing your software than you do actually writing code. And those projects have the bad habit of being cancelled three quarters the way through, because funding gets pulled, or the researcher just leaves, or quite often they find an off-the-shelf software product that is a better solution.
I did that for 3 years. Funny how it seems to be a universal experience. Confirms to me how it’s pretty much the same, regardless of project, funding or scientific area.
For me it was a bit heartbreaking to see, because I loved the idea of writing software for research. But the reality was that academia simply does not have the right structures to support serious and sustainable software development and until that changes, it feels more like a thankless “bullshit job”.
You simply can’t run software development in such a opportunistic and chaotic way like scientists do their research and write papers.
Virtual Lego Assembler; the Virtual Legos are Libraries / PaaS APIs
I always say “web application developer” because I don’t want to be considered a “web designer” (which I consider to mean designing static websites for businesses like restaurants).
- Captain Handcannon
- Big Cheese of the Seven Seas
- Luscious Duluth Doddery Landran III the Fourteenth
I am and do basically whatever they need. Please end my misery.
senior headpalmer
- Janitor
- Babysitter
- Contortionist
Business Process Optimization Tool Builder (I make boring backend systems to help boring businesses do their boring work more effectively)