I guess that the government isn’t considering the expense of the employee as much as they are considering the value that the company has retained. Say the developer creates some software that you turn around and license to your customers. That software now has a value, and it will have a value next year too. It probably won’t have a value forever, which is why you can expense a certain percentage of it every year for x number of years.
The money you spent on the employee is probably a direct expense that year, but the product they created still has a value. The simplest way of valuing the product, from the governments perspective, is just to consider it equal to the development cost.
This is how other businesses have always had to treat the work product of their IP generated from R&D...
Software businesses were exploiting a loophole, which was fine when they were limiting themselves to their own turf. When they started encroaching into and destroying other industries, it no longer made sense to keep this loophole in place. So basically, the software industry has only itself to blame for this.
And then theres engineers devoted to maintenance of the systems full-time.
Do ops/infra people fall under this?
The rules of the game have changed. We were allowed to expense all employee compensation tied to software or R&D in the year in which we paid it. Now we can only expense a small fraction of that because we have to capitalize the expense. That means if you paid and developer $100 to develop a piece of software then sold subscriptions totaling $100 you now have a profit. The old model you have zero dollars in profit the new model says you have something like $80 in profit that you know have to pay taxes on… with what cash?