• AlecSadler@sh.itjust.works
    link
    fedilink
    arrow-up
    28
    ·
    11 months ago

    Sad, but true. First 7 years of my software career were split between two companies and despite 3 promotions and exceeding expectations in reviews regularly, salary growth was between 2-5% YoY.

    Most recent 5 years of my career I’ve changed jobs every 6ish months and am now averaging about 40% YoY salary growth.

    • UnderpantsWeevil@lemmy.world
      link
      fedilink
      arrow-up
      34
      ·
      edit-2
      11 months ago

      Insane that a company will pay you a 20% premium to hire someone that they’ll spend 6-months training just to watch said person fly off to another firm.

      Contracting is even worse. Bring someone on to do menial piecework at 2x-5x the median company salary, then kick them out so you can bring on another person who has no idea how your company operates to do the same entry-level jobs. All so you don’t have to tell investors how many people are actually on your payroll.

      No wonder the business failure rate is so fucking high.

      • AlecSadler@sh.itjust.works
        link
        fedilink
        arrow-up
        7
        ·
        11 months ago

        It’s an absolute cluster. It’s also led to me just not caring about the job or company anymore (not like I should).

        I love supporting the team and my immediate coworkers, but I’m not there to make friends. For all we know our entire project gets canned one day anyway.

        It’s a sad state of affairs to basically take advantage of this situation, but like…company loyalty doesn’t pay my bills.

      • lad@programming.dev
        link
        fedilink
        arrow-up
        3
        ·
        11 months ago

        There are also a second hand caste of contractors, it’s the ones that work as ordinary employees but employed by another company so that they don’t get benefits

        • UnderpantsWeevil@lemmy.world
          link
          fedilink
          arrow-up
          12
          arrow-down
          1
          ·
          11 months ago

          I’ve been on both sides of the contracting game. While I certainly have broad skills and a speedy comprehension, I’ve never been on a job site where the guy handling the software for the last 10 years understood it worse than I did after the first six months.

          I also can’t help notice the deplorable state of documentation, at least in my corner of the O&G accounting software field. So there are plenty of instances in which a contractor will roll in, throw something patchwork together, dump it on the client, and then leave me to support the rickety piece of crap for the next five years. I get to play Inspector Gadget as I parse through miles of spagetti code, trying to run down why some obscure command has decided to produce a vague error.

          Did the contractors know more about some niche javascript package than I did when the project started? Absolutely. Do the contractors care that I’m going to be the one shoring up this antiquated, sloppily implemented code injection until we retire the system? They do not. Would the $300/hr for a year of fussy support been more valuable if applied to a $40-$80/hr on-site tech who stays with the firm for the next five years? Yes.

            • UnderpantsWeevil@lemmy.world
              link
              fedilink
              arrow-up
              2
              ·
              11 months ago

              Sounds like organizational failures all over the place, not the fault of contractors.

              You’re not wrong. This falls on the managers heads as much as it falls anywhere.

              I’m not blaming contractors for being contractors. A lot of these folks are straight out of college and new to their respective fields. It isn’t there fault that Deloitte or Accenture or whomever spent six weeks teaching them to make power point presentations rather than giving them a proper six month seasoning in proper standard business practices. Even less so when the folks running my own company never bothered to learn how to do things properly themselves and don’t appear to know who to ask.

              But the consequences of the practice of hiring a flood of pricey contractors to do implementation and then leaving the maintenance to a bare-bones staff is misery for everyone involved.

              So management and current team let in garbage code

              Management doesn’t know shit for shit about coding. The current team doesn’t get to vet and approve the code that’s released (as if we’ve got the time given our existing maintenance roles). They only get to handle the final product that’s delivered. That is a central problem with the business model. Trust is invested in contractors that isn’t earned or deserved. Meanwhile, the expectations of functionality are transferred to the skeleton crew staff once they leave.

              I don’t think adding another employee to an environment with broken communication and no code reviews will improve anything.

              I think you can’t get to an environment of effective communication and consistent code dev/review standards if half your workforce evaporates at the end of the contract period. As it stands, we’ve got managers stacked six roles high while the actual applications have maybe 1-1.5 employees assigned to each. So who knows the systems well enough to review the other guy’s code?

              Having a mentor-mentee relationship on each app would be much preferable to a contractor-for-a-year/single-support-specialist-for-a-lifetime situation we’re dealing with now.

        • Agrivar@lemmy.world
          link
          fedilink
          arrow-up
          11
          arrow-down
          2
          ·
          11 months ago

          Mate, you’re either the unicorn of contractors or straight-up lying to yourself, and us.

          • Jax@sh.itjust.works
            link
            fedilink
            arrow-up
            4
            ·
            11 months ago

            Well no, ideally contractors should do everything this person says they do. They should provide expertise that teams don’t have, and by the time they leave the team shouldn’t need them anymore.

            The problem is less the contractors and more the people handling the contracts. Sometimes it’s between client and contractor, sometimes contracting company. You can’t blame the contractor for being hired to do a job, blame the person claiming there’s a need for contractors.