1. Fire them the usual way, in this case there is a termination period (usually 1 month).
2. Fire them on the spot. This is possible, but usually only done if an employee violated a contract agreement, harassed somebody, or basically committed some kind of serious offence.
This only applies to those employed in The Netherlands, other countries may have other rules.
More information: https://www.rijksoverheid.nl/onderwerpen/ontslag/vraag-en-an...
To me, the most outrageous part was this:
> The cherry on top of this disastrous situation was that throughout the entire process I only heard good things from my manager. In total I had 3 1-on-1's with him, and even though we discussed the situation and what was wrong multiple times, he never, for one moment, gave me the impression that my job could be in jeopardy. A few weeks later I was fired.
I'm not a lawyer, but there's no way that would be acceptable under Dutch law (if he was an employee).
You can definitely fire someone if hey are not performing. But you'd at least need to warn them about their performance, and allow them time to improve.
Unfortunately, as a contractor, you do not have these protections. Given that the entire company is remote, only a tiny percentage of the people that work at GitLab are actually employees, and they take full advantage of that.