As a technical writer you are employed to write a sort of truth about the software you are documenting.
Of course, any company is in business to make money and there are always some contradictory motivations within the organization and perhaps in the wider industry you are operating within. What’s more, since computer software is still relatively new as a discipline, it has not developed the traditions, nor the laws, of other, older, types of engineering and manufacturing.
This sometimes poses a problem.
Basically, if we as a civilization get by to the next century past our current environmental and development issues and the destabilizing conflicts happening right now, then we as a species could live millions of years.
This gets me thinking.
Our software products may very well withstand the test of time, so any serious company should build their products to last. This is as much true, maybe moreso, than something like a physical bridge, which may only last a hundred years. That class you are putting together in C# today, well, it could show up and be put to use in Lua tomorrow—or in the next millennium.
Programming is more than just writing, it is literally engineering with symbols, and it almost always builds upon previous work.
If there is a serious computer engineering issue in the R&D department it is someone’s responsibility to go against other forces in the organization to make it known, or at least to debate the case, just as if there was an architectural problem when putting up a bridge or building.
Questions are the lifeblood of technical writing at least so I would hope this remains relevant to others outside R&D and ultimately it makes good business sense too.