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?
Lead googler
Yaml editor? Business therapist? Email author? Paid meeting actor? Scrum participant? Office cynic? Idk.
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”
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).
Virtual Lego Assembler; the Virtual Legos are Libraries / PaaS APIs
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 wanted to be an archeologist.
Not only did I fail at my dreams I gave them up for the lie of “job security”.
To be honest software development and archaeology have a lot in common.
“Embedded control architect”
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).
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.
If I didn’t write code? Network… make… worker…
On first read, I assumed the title asked what would be my second career choice. Other than self employment, that would be gardener.
project manager
Learner.
Id just grow chilis and make hot sauce. Probably switch to arch and find an open source project to contribute to for scratching the tech itch.
If money weren’t an issue I’d go back to working in fast food or a warehouse. I miss busting ass and being able to clock out at the end of the day.