Or maybe their manager was just a really big fan of Oracle or something. I don’t know.
I understand my view on the DBA may be limited, but are you serious ? Have I been unlucky and only ran into this weird subcategory ?
The problem is that that is basically where all advancement stopped for them. They learned SQL well enough, they might even know how to do transaction rollbacks, but god help you if you have a real systemic problem that takes detailed knowledge of the whole system to unwind and fix without major data loss.
I'm in the process of trying to convince management to hire a real Postgres expert(both inside and outside the database), because we are currently on a bad, checkbook driven path that is moving tons of our managed RDS Postgres databases to self-managed (and poorly architected) clusters on another cloud. I have neither the time nor the inclination to become a deep Postgres expert.
Of course I'm solving real and challenging problems, but the skills that got me here in the first place are dying on the vine.
Also, on top of that, I'm "the cloud/networking/debugging guy" for about 150 engineers. It's annoying. I want to turn off Slack.
That's a good thing: it gives you great leverage to ensure good retention-pay.
-------
During your 1:1s/"connects"/perf-evals, don't frame it as "I hate being the only one here who knows SQL, I'm quitting/gimmie-a-raise", instead frame it as "I'm proud of the great accomplishments that my unique and deep understanding of both database-theory and SQL in-practice have brought to the company; given my significant responsibilities I now have in the team/company I'm sure you'll "recognize" my now quite-significant leading-role...."
(for best effect make the "money-gesture" with your fingers during the last part).
...I wish I had the gall to do that when I was younger.
Being pigeon holed into boring work just because you're "the guy" is crap, no matter how good the salary is. I quit my last job because of this, and would encourage anyone feeling the same to do so.
No amount of retention pay would raise my spirits in that situation.
Not even this. It's worse when you end up with a whole bunch of tedious, yet very basic work dumped on your by people who have no desire to know what they're doing because "the database guy" can just do it instead.
Note that it's not only "databases" where this happens.
90% of the time my answer was simply "Yeah... That's a bad use-case for a regex. You can use this java snippet to accomplish the same thing."
At the start I would actually solve their request with some hairy regex, but it generally did not perform well and when requirements change they'd be unable to edit it and would find me again to change it.
But part of the problem was they did know simple enough regex for what they wanted to accomplish. Having a few simple regex and some application logic around them would have done it. But they'd often think "that sounds messy, squeaky-clean can probably solve this in a single regex." And while I probably could, it would not be good code nor would it be more performant.
I wouldn't even have minded being seen as the "string pattern/parsing guy". But I was specifically regex-guy in their minds.
Also story for another day and another thread, I was also the MongoDB-guy. Similar to the regex stuff though, in 90% of the questions they'd send to me MongoDB was not the correct choice.
Overall it's more nuanced then could ever fit into an HN comment (yes I brought it up with management, and other issues), but there are a number of reasons I quit. I quit a couple months before a company buyout we knew was going to happen and I had equity. I felt like it was probably the right choice then. I recently got some beers with some of my friends who stayed through the buyout and had equal amounts of equity and learned I did make the correct choice.
"Hey can I borrow your chainsaw?"
"Sure, you need the gas powered one or the electric one?"
"Oh I'm not sure, which one would be best for cutting my hair?"
You got it. A previous role as a database firefighter was something this individual did not want to continue at their new workplace.
Additional responsibility with no additional authority absolutely sucks when you get (a) pigeonholed, (b) saddled with every single request ever about _______ in addition to your other work or (c) some unholy combination of both.
Especially when ______ only has enough “buy in” from decision makers to make the decision that you need to keep ______ alive because the business “needs”it but apparently not enough to properly source and acquire the necessary resources it needs compared to other business initiatives.
Because “why do we need to do that? I thought you knew about ______ “
Go figure. I’m quite done volunteering myself like that.
In an interview I don’t want to be intimidating and feigning ignorance can give the candidate opportunity to shine. If they go deep, I can keep up and keep pushing, if they veer into bullshitting I can tell and gracefully conclude without offending anyone.
As a manager, not disclosing depth lets me ask stupid questions more frequently and in more contexts (for the benefit of others, for when I forget something or don’t understand something, as a Socratic teaching method, to help set the culture of asking questions, etc)
Playing dumb is also a good way to avoid responsibility if you hate something, too, if a bit passive aggressive.
Surely everyone here can relate with the classic "computer guy" everyone takes advantage of. It turns out this exact same thing can happen in actual technology companies. All you have to do to become "that guy" is have knowledge about some vital technology that people don't actually want to care about. People will happily send anything related to it directly your way, increasing your workload and responsibilities with zero additional compensation.
It seems databases are to many professionals what computers are to laymen. They depend on this technology but they don't fully understand how it works or how to fix problems. They still want to define the database schema and make other key decisions. If there's any problem, they don't want the responsibility, they want to be able to offload it to some "database guy". Who wants to be that guy?
> or were they maybe under threat of becoming an "on call" asset?
This is likely, especially if the person they're talking to tends to leech on other people's skills & time.
I've been known to pretend not to know a damn thing about WordPress, for instance. Even though I do.
But difficult, and with consequences.
I once extracted a PPD from a very expensive printer's firmware because the vendor didn't officially support Linux.
This was when I worked for HP
But here's the thing: it wasn't just HP, it was a lot of print drivers. I suspected that there was some printer driver boilerplate out there, possibly even published by MS, that included this bug.
(And, wow, did I swerve sharply into the off-topic lane for story time. Sorry.)
Told him to contact the provider.
And there are tasks you took on at old jobs because they needed to get done and nobody else would do it, so you got stuck. You did them. Maybe you even did them well. But they aren't on your resume, because you don't want to do it again. And if you mention them as anecdotes, you are careful where and when you bring them up.
In my work, I would want to be the know it all, so that I can jump between good projects.
In my consultation business I would want to be the master in the topic I work with.
Depends on the context.
I've used many databases including mongo. They are all tools like any other with pros and cons and having experience with multiple across domains is a boon.
"... teaching of BASIC should be rated as a criminal offence: it mutilates the mind beyond recovery"
- Edsger W. Dijkstra
https://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/E...