I've been freelancing for 9 years (with a 1-year interruption last year as a regular employee, but I managed to escape that), starting with small projects for small customers, but very quickly moving on to larger projects for larger customers that pay better. My second client (a 4-person company) stiffed me for about $600, which lead me to avoid such small companies, and I've never had any payment problems since moving on to bigger clients.
There's usually a recruiter in between, which partly sucks, because they have their own margin, but I can imagine it may also have played a role in making my payment more reliable. Those recruiters also find my projects for me, so I barely do any acquisition of my own. I guess I could do more, but this works well enough for me.
(I have no problem working with autistic people; I come from a family that's probably riddled with high-functioning autists (though only one was ever diagnosed), and at work I've noticed I'm pretty good at translating for people who struggle to express their technical ideas.)
What I do is quite simple: make sure my CV is on LinkedIn and similar places, make sure it ends up in the databases of recruitment agencies. Then, when they see a freelance opportunity for which they think I'd be a good fit, they call or mail me, and if I'm available, we discuss it, and if I'm interested, they send my CV to the client. If the client is interested, I talk to the client. If we agree, I sign a contract with the recruiter, they sign a contract with the client, and I work for the client but bill my hours to the recruiter. Recruiter gets their cut.
I could probably cut out the recruiter's margin if I was able and willing to do their work, but that's a lot of work, and I'd rather focus on programming.
Companies that have an urgent need for a certain skill will be happy to take you on as a freelancer for higher money, either while they look for permanent staff or if it's just a one-off bet and they're not yet sure whether it's worth getting permanent resource for something that may be discontinued. Get a steady stream of these gigs for a year and you make twice the money you'd make as a permanent (outside FAANG maybe), and if you keep your burn rate low you can also leave the bulk of the money in the company for the next tax year and take advantage of the lower tax brackets which you can't do as a permanent employee.
Regarding the $1/hour MVP, that's just down to where you find your gigs. I recommend getting your gigs either directly via your network, or failing that, via recruiters - yes they take a cut and they might be shit but there's also good ones (see https://news.ycombinator.com/item?id=29392115) - in my experience good old "brick & mortar" (well, not so much during the pandemic but you see what I mean) recruiters have a barrier to entry that's very effective at keeping "$1/hour millionaire-maker SaaS" at bay, which also helps with regards to getting paid as what's left is typically established businesses within your own country and in reach of the legal system you have access to.
Absolutely do not waste your time on Upwork or similar - that's the bottom of the barrel where $1/hour MVP is commonplace in a self-reinforcing feedback loop, as good talent leaves which means good projects also leave and the only thing remaining is crap - on both sides of the market that is.
In the UK:
Your company pays corporation tax based on profits during the tax year. Whatever money is left can be disbursed to employees, shareholders, etc.
You as an individual pay tax based on your yearly income. There are several tax brackets depending on how much you make, as well as "free" brackets (you don't pay anything on the first ~12k of employment income, and there's an equivalent for dividends but much smaller).
Anything you pay yourself from your company then incurs this individual-level taxation, but since you can choose how much you pay yourself you can only pay the minimum (to stay within "acceptable" tax brackets) and keep the rest in the company for next year or for company-level investments (new hardware, expanding the business, etc). For limited-company contractors, the usual strategy is to pay yourself ~12k/year of salary and the rest is in the form of dividends which you can vary depending on your situation & needs.
Is it complex to manage? Depends on the jurisdiction; some are more evolved than others. In the UK I find it super easy and while I can bitch all day about the amount of tax I'm paying, at least the documentation is quite clear and they make it super easy to manage everything. I do have an accountant but at this point it's mostly for advice and "just in case" than anything else - day to day is handled by FreeAgent and I just have to make sure the data is entered properly and the software takes care of the rest.
Hang on... what is it that makes "having to deal with autistic colleagues and managers" so bad that it's the only example reason you give for going freelance?
This is why recently I've started curating freelance jobs from many different sources - job boards + LinkedIn + Twitter etc, filtering them and sharing the best leads with freelancers. Started getting huge shoutouts from some web agencies/shops. This is totally free for now and planning to release it as a service [1]
Most of these companies in this list are most likely to hire freelance developers/marketers/writers.
It's still in beta, feel free to reach out/dm me if you would like to access the full document. [2]
[1] -> https://twitter.com/RahulrangarajR/status/148021905157812224...
Every client is a manager, but often they don't have those skills (and... they probably shouldn't have to). So, either you need to become a manager, convince them to, or bring someone else on to do it and ... you'll end up with a small team of folks. Bam - you now have to deal with a variety of communication styles.
Try dealing with a client who wants integration with a third party system, then tells you the data is wrong based on data they see in their own internal tool that they won't give you access to ("you might screw it up"). "The customer is always right..." except when they're not.
> they want you to work on their project, while on the other, they want to save as much money as possible.
So... don't charge hourly? Or time-based? Flat rate problem/project estimation is another way to go, but ... I've found many clients don't actually want to think that way, because you end up having to say 'no' to almost any change in the scope of an engagement. And you end up spending almost as much time trying to scope out changes and agree to new terms as you would just working on the problem.
But this is not limited to freelancing - it exists in normal work contracts, too.
If a client decides he's not going to pay you for whatever reason, he can just block you on Slack, email, and everywhere else. Sometimes you can use a contract but good luck executing the clauses when you're on the other side of the planet. Even if you're able to sue, it takes months or years and a massive amount of energy. You might even lose if the other lawyer's able to find any loopholes in your contract.
Personally, I think this is too much for a single person to handle. How are you going to have enough energy left to do actual creative work if you have to deal with all of that? If you decide to start an agency and have your own legal department, then it's another story. There are some agencies who derive the majority of their revenue from legal actions anyway.
Your experience seems very grim. I've been in freelancing for decades and never had such a situation. Even non-paying customers were rare to me, and I only once had to actually sue. You will still loose some money sometimes, mostly due to your own bad estimates and client's bad inputs, but that's a fact one needs to plan ahead when running their own business. Sometimes you'll screw over the client as well - a well paid gig will come over that you don't want to miss and client's project will be put on the back burner. Not nice, but hat's also the part of running a business, knowing your priorities and cutting where needed.
But all in all, I don't think freelancing is in any way significantly different, nor harder than running an agency (or any business) - only that you have to accept that you need to play more than one roles until you can afford to hire people for that. Having 5 to 9 job is easier, but also has its many downsides, so I wouldn't dismiss freelancing without even trying it for a while. If nothing else it's a great way to learn both about technical and financial stuff, because it constantly forces you to figure out how to do and solve new problems, no 2 projects are exactly the same, unlike working in a companies where people spend entire careers maintaining the same piece of in-house code.
"when you're on the other side of the planet." Don't take that work. It may sound easier said than done, and I remember days when I had no specific projects lined up and no sizeable network to reach out to for referrals/leads. It's not a great feeling, but if you can press through you can get to a point where you're not taking projects from around the planet.
Even understanding that might be hyperbole - I took a project in a different state, and the guy ended up not paying. $8k. This was, to me at the time, a fortune, and needed. I tried to sue, and it took a long time, extra $, and... owing to some problems, was not resolved in my favor, even with facts on my side. I understand the headaches.
I've had one other time where someone in my own town - who came through a personal referral - had a payment bounce, didn't pay on time, and I found out was underpaying others on the project. I was uneasy a week in, but pressed on to not upset the mutual friend we had. Lost out multiple thousands in the end, taking on some other subcontractors with the assurance of payment which didn't happen.
These are hard lessons to learn, but you generally only need to learn them once (or twice...). If you spot a problem ahead of time, walk away, don't engage, or require some up front deposit. Again, easier said than done, but it weeds out a lot of projects ahead of time that. Projects can often be hard enough to be successful with - avoiding some known red flags up front saves a lot of headache.
And... with FTE, you have all your eggs in one basket, and your choice of working relationships is limited. Your earlier comment about 'one word replies'... you get that often with colleagues in FTE situations. At least, I've seen it enough to know it's a potential problem. You have more choice about who you work with in freelance/contract situations than you do in FTE situations (you're moved to team X without any say so, assigned to new projects, etc).
I have a suspicion that you live on a highly compensated side of the planet.
You need to look, and keep looking. I've been doing this since the mid 90s, and the effort it took to network, get exposure and build a brand was, IMO, much harder back then than now. However, there is likely more competition today than... 25+ years ago, so, perhaps it balances out in some way.
Let's face it: custom software development is a systematic mistake, it shouldn't exist in the imaginary world where all actors are rational and well-informed. Hiring individual developer is fine, as long as you (customer) are technical and can manage him on "assign task in tracker and check and merge resulting PRs" level. If you are not, you get yourself a technical cofounder who will be willing to do it for stock alone (otherwise he will be that party that scams you, passing whatever minimum money necessary down the value chain). In any other situation, you just get ripped.
Contrary, once you figure the art of sales sufficiently (which will amount to weeding out the qualified clients), you will see that however honest and hardworking you are, your projects result in nothing.
And if not, you can always hire a consultant and accept it as a realistic cost of running the business, instead of feeling being ripped off because you could have had it cheaper "only if".
Using autism as a negative word is as bad as being a racist.
"Autistic" is not an acceptable term to use in a derogatory way, and not fair to the TONS of people on the autism spectrum who work hard to fit in at a predominantly neurotypical workplace.
I don't know if you meant it in that way but your use of that word is very unsavory in this context, and I urge you to be a little more considerate in your use of that word when you finish your search and join a company.
"Please don't pick the most provocative thing in an article or post to complain about in the thread. Find something interesting to respond to instead."
I'm curious what kind of tools do you have for moderating HN?
Like do you have a tool that highlights threads that are racking up tons of posts/downvotes/etc. or something like that? Or is 80% of your day spent reading every thread posted?
I'll grant that focusing on it was not in the spirit of the HN guidelines. That's on me. However, GP's comment would have been just as unacceptable if it was distinguishing based on race, or gender, or LGBT status. I'm surprised and a bit disappointed that there's no explicit guidelines against derogatory uses of that kind of language.
Does "derogatory speech" count as "flamebait"?
> Eschew flamebait. Avoid unrelated controversies and generic tangents.
Personally, I would say yes, derogatory speech is flamebait, because there will of course be those that criticise it and those that defend it as plain speaking - a classic flame war. It's also (certainly in this case) unrelated, tangential and clearly controversial.
There's also this bit:
> Be kind. ... Please don't sneer, including at the rest of the community.
The clause about "including at the rest of the community" suggests that it also applies to those not in the community.
The discussion is effectively de-railed, the person's comment demeaned and substance distracted from, and here we all are, forced to discuss this topic whereas 100% likely that the person that used the term "autistic" is neither against autistic individuals, isn't going to discriminate against actual autistic individuals, and is a decent human being that hasn't hurt anyone. So what have we accomplished?
Anyway, what I've found is that people who speak out against "bad words" are quite toxic. It's obvious that autistic in this sense isn't the clinically diagnosed condition but in that of slang. If I say that you're like a pig, it doesn't mean that you go oink oink. And yet, educated people will take everything you say literally and turn into missionaries.
Reminds me of the time when the church destroyed pretty much every text on Greek philosophy simply because they said that the soul doesn't exist.
> educated people will take everything you say literally and turn into missionaries
On the other hand, "Autistic" can and is taken literally regularly. So it feels pretty disingenuous for you to expect "educated people" to determine and keep track of how YOU specifically use the phrase compared to all the other people in their lives.
And if one of the people reading/hearing what you say IS autistic, their experience of others using the phrase is probably not as light-hearted as yours. There are plenty of people out there who DO mean it literally. So it is entirely up to the person reading/hearing the comment to make that determination.
You want to blast people in a professional setting who can't string together sentences, go for it. But describing them in a way that CAN be taken literally will cause problems.
TL;DR: My suggestion is to stick to "bad words" that people can't be born with.
Just paraphrasing OP as you seemed to miss the points he raised.
I don't care.
Grow an skin.
People in my life who are on the spectrum, that I care about, care.
I'm not standing up for you so much as I'm standing up for them.
There are plenty of autistic people that do and don't have trouble communicating. Like there are plenty of neurotypical people who do and don't have trouble communicating.
Sure, the percentages are skewed very differently, but it's nowhere near all or nothing.
The discussion around using "autistic" as slang for someone with communication problems is a problem because it can be taken literally or as slang. And without knowing you, I can't be sure which way you meant it, especially in an industry where there are MANY autistic people.
So my suggestion is to avoid "bad words" that can be taken literally because without knowing you personally, I can't be SURE how you MEANT it. And my experiences with people throwing around "autistic" could be SIGNIFICANTLY less light-hearted than yours.
TL;DR: My suggestion is to stick to "bad words" that people can't be born with.