• MasterBlaster
    link
    fedilink
    English
    arrow-up
    1
    ·
    20 hours ago

    Oh, they “come home to roost” almost immediately - you just don’t see it because whole teams are doing everything they can to hide it or ignore it - nightly manual data update statements, etc… Here’s just one real example.

    In my last (read: final) job as a senior software engineer, I discovered dozens of serious problems with the system I was assigned to “maintain”. They ignored all of them - wouldn’t let me fix anything. Meanwhile I was responsible to solve production problems on the daily (duplicate data, insert failures, performance slow-downs, etc).

    It wasn’t long before the fact those problems weren’t going away that they became problems I “caused”. Meanwhile, all the fixes I wanted to make were ignored. I had one problem I dissected and and gave my boss a brief write-up of the scenario. He told me I needed to do deeper analysis. When I came back a few hours later with a considerably more detailed explanation, he didn’t read it and complained of a “wall of text”, which he literally told me to write. Then he created a random-number hack to “fix” the problem.

    They did not grasp the concept of data normalization and primary keys as they had one particular table that represented two levels of detail (for example, account -> order). They put both in one table and had a code based special update to the “account” number so they would not get a PK violation rather than just fix the data structure.

    They had as single database connection open all the time to handle all inserts in a singleton service, then launched as second one on the same database to process messages faster - and couldn’t understand why it didn’t double performance.

    The main routine had a cyclomatic complexity of 360! I shit you not! And everybody agreed it was “95% working” even as we continued manually fixing (the same) problems daily.

    Week after week, the customer (internal) would raise more data issues as “new” problems. I’d routinely ask two to three questions about the data set and explain that’s the same problem that’s been going on for six months, and if we could just get my PR reviewed, we can test it and deploy it.

    All these problems were in a single service.

    I was let go not long after the 1 month probation they soon initiated and told I was not performing at the level of a senior developer.

    This is how delusional these people are. They refuse to acknowledge their flaws even after hiring someone specifically to solve them. They blithely call their monstrosities “successful” while committing many staff to late nights and weekends “managing” it.

    • MangoCats@feddit.it
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 hours ago

      So, first, it sounds like leaving that job was an upgrade…

      I interviewed with a similar company, they had a 3 month average turnover in their software development department. They declined to hire me because “you’re over-qualified, you’ll just get a better offer and then leave us.” True enough, but that might take years, is very unlikely to happen in the next 3 months and by that point I’m beating your average… I think what they were really afraid of was that I might corrupt their culture and actually teach their developers how to fix problems instead of patching them and quitting. Getting their software patched to fix problems also seemed to be perversely ingrained in their sales / support culture - I don’t think sales there wanted software that “just works.”

      Over the years, I have done my best to avoid database and network… both seem to be an invitation into a hell of others’ makings. I prefer my own hells to others’.