I've also quit a job where the products I was working were meant to be deployed to CBP to hunt down immigrants. It's a nice gesture, but it won't stop these companies. They just hired someone else without an ethical backbone, and continued the project like nothing happened.
Tech leadership is rotten to the core, and that can't be fixed by individuals making a stand.
I agree it won't fix the problem, but marginal drops in labor supply and skill can still have an impact.
I've quit jobs and been laid off from jobs and I will admit that when I do, I always kind of hope that the company goes bankrupt the day after I leave because I was so important. Companies I've quit or been laid off have gone bankrupt, but it took years and sadly I don't think there's any way for me to draw a logical connective of "no tombert -> company fails".
I've never quit a company on purely ethical grounds, but I have turned down interviews and offers because of them. They're probably not going to go bankrupt just by not hiring me, but I like to think that making it incrementally harder to find talent slows down their progress of doing evil things, if only a little.
That's probably still a delusion of grandeur on my end, but we all should have an ethical line that we won't cross; most of us end up working for monsters and/or assholes, especially at BigCos, so your options generally boil down to "work for an asshole who's doing evil that you can live with" or "go live in a Unabomber shed". I guess it's important to make sure that "the evil thing you can live with here" isn't just any act of evil.
> They just hired someone else without an ethical backbone
Or who simply had a different point of view than you.
Or someone with a backbone, i.e. willing to enforce the law.