The answer for contract software engineering is: "Technically, but not really". You interview, then they offer you a job/ contract which pays a certain hourly amount, and you can accept/decline/counter offer just like a full time job.
The equivalent here would be something like, "Okay candidate, I offer you a job as a contractor and the contract says you get paid based off of this algorithm. Accept or decline?"
This is only true at the start of your career. I’ve been consulting and contracting for decades; customers call me following word-of-mouth recommendation and ask me what my rate is.
Even when I was starting out, years ago, the palette of contract work offered was vast. I was never obliged to follow a cab-rank rule.
Typically, you're employed by the contracting agency (with benefits), they work out a deal with the business and take a cut off the top, though we informally refer to this as contracting.
If you were to set up an agreement with the software company yourself, then it'd be conventional contracting.
The equivalent here would be something like, "Okay candidate, I offer you a job as a contractor and the contract says you get paid based off of this algorithm. Accept or decline?"