Without getting too specific - company A pays me to fulfill contracts we bid on within government entities. There's a ridiculously ludicrous amount of red-tape that translates into down-time for someone like me. I do one of three things: software dev, data engineering, or ML modelling. Only one of those three domains because the way this company works, everything is compartmentalized so there are specific folks for specific tasks. I'm a senior/lead so I do my part and pass it to the next fella.
Company B is more end-to-end full stack dev work. I just happen to know this domain very very well, along with the libraries, tech stack, and business goals involved in it which translates into rapid development on my part supported by mid and junior level engineers.
Also, having been burned by companies in the past, I no longer make it a priority to "go the extra mile", I do exactly what is expected of me to do and generally no more or less. Although, I am a stickler for documentation so I do write up a lot of our code-base, architecture, and other things.
The last couple of companies I worked for were fairly bad in terms of quality of life so I've moved around a bit until I found jobs that were a good fit for me. The last two years especially have been somewhat of a blessing because engineers are in high demand and I played it to my advantage.
I'm employed full-time at both companies, both know that I am doubly employed and have no issue with it as they are more concerned about project/task completion rate rather than hours on the clock. Which I would argue is how it should be at most companies. Additionally, I work from home.