19 ms·
How to start a successful freelance business as a software developer (2017)
- jaggederest 5y agoAs the article alludes, but maybe doesn't state clearly enough, the most important and only thing that really matters when operating independently is the ability to get and retain clients. If you cannot do this, no amount of skill in other areas matters, and if you can do this, skill in other areas is probably helpful but not critical. Anything you do that does not directly lead to getting a new client, or getting an existing client to sign up for more work, is wasted effort. Obviously you need to fulfill your obligations to clients (falls under the latter). I always joke when I am freelancing that actually doing the job is 50% of my time, and the other 90% of my time is sales, marketing, and business development.
- andi999 5y agoWhile I agree to an extend, also the quality of the 50% (the work) helps (or hinders) to get more work.
- shubb 5y agoTo share a failure - back in 2015, I tried to set up as a freelancer and ended up going back to perm/employed work about a year later. Between subcontracting from established freelancer friends and reaching out to my network I was able to get a few projects, and things were progressing nicely but then my biggest single client had some internal issues and basically didn't pay me for 6 months. My financial situation going into freelancing was not good - I had some debt going in, and then put some incidental expenses like visiting a customer's city and staying in a (cheap and amazingly nasty) hotel for a few weeks on a credit card. The gap between invoicing the work and getting paid was too much and I realised I needed reliable cash flow. They say the main reason businesses fail is lack of capital. Turns out starting a business with negative capital is hard. Too hard for me.
- wrnr 5y agoSounds like you had terrible clients. Stuff like this seems to be very common, I had simular problems. The hardest part is to be relentless and judge bad people was wanting and move on to better things.
- mgraupner 5y agoDid you continue to work for this client during these 6 months not getting paid?
- shubb 5y agoNo, basically I delivered an app, but the engineer on their side got fired so the back end didn't get done. They didn't want to pay me until they rehired and finished the backend so they could see the app working.
- b112 5y agoThis is what small claims court is for. In most places, no lawyers are allowed, and no discovery. Filing is cheap typically. Discovery is vital to keep nonsense costs down. If anyone is thinking of going into consulting: - simple, plainly worded contracts with pay schedules are important - check your local small claims court, focus on if lawyers are allowed, if discovery is allowed - find out what your local demand letter laws are like. A demand letter may be required prior to small claims court.
- lowercased 5y agoSmall claims court in most areas has a max cap of dollar amount. Someone owed me $8k. Small claims maxes out at $5k. IN RETROSPECT... I could possibly have taken them to small claims twice, over two unpaid invoices - each around $4k. That would have kept me under the limit, and possibly sped everything up a lot.
- b112 5y ago
- unnouinceput 5y agoTo quote Ray, this is through US colored glasses advice. How would a developer from, let's say, Middle East find good clients? If they only walk and take down notes of business in their area, they will only get jobs that pays according to local wages, none of them would be even $25/h let alone the dream of $150/h like US freelancers. Yeah, Upwork will "mandate that you keep an app running that randomly takes screenshots of your desktop" but for me, an East European freelancer, was the only way to find clients from US/Canada with which I developed long term relationship. Perhaps instead of fully vilifying platforms with "Beware of Freelance Platforms, They Are Evil", the author might want to walk a mile in our, less fortunate ones from shitty countries, shoes. My 2 cents.
- KronisLV 5y agoEastern European dev here too, chiming in to confirm the validity of this argument in my experience. > Upwork will "mandate that you keep an app running that randomly takes screenshots of your desktop" Of course, this feels really intrusive and back in the day i negotiated fixed price contracts on Upwork with clients, though finding good projects on the platform (and not just ones that ask you to fix neglected WordPress installs) also took a lot of effort. Nonetheless, when studying in University and before having a proper long term job (in this case in a local company due to the stability of it and academic requirements to work in a credentialed company), it was a nice way to help me get some income!
- deleted 5y ago[deleted]
- rl1987 5y agoI second that. "Don't go to freelancing platforms, reach out to your network and local companies" is only good advice if you happen to be in the social/geographical/economical environment that has plenty of opportunities. Local market in any of East European countries is far smaller than it is on Upwork, Fiverr et. al. and is highly unlikely to pay first world rates. One may say that freelancing platform encourage race to the bottom kind of dynamics. That is true to some degree, but for the most part that is a problem only if you are doing commodity work and primarily compete on price. There is a relatively obscure sub-economy in the world of freelancing platform with people doing professional services for professional rates even by the standards of the first world.
- bluebit 5y agoHonestly it couldn't be easier if you have some degree of skill - register on Toptal.com and the jobs literally flow in ($70p/h + depending on skills) and you don't have to worry about contracts, marketing, management, invoices etc - you literally just do the work.
- knuthsat 5y agoThis was my experience too. After the initial period where recruiters are a bit afraid to give you your first engagement everything starts flowing really smooth. I started at Upwork and was constantly writing proposals and struggling with the search to find relevant jobs. But on Toptal, even after an abrupt end of the contract I get something else in less than a week and it's zero effort from me and all effort from the Toptal team. Even if I get bored and want a change, announcing the end of contract turns on the avalanche of offers from the Toptal team. It's just insanely smooth and I had no idea I'd find something like that, initially.
- mgraupner 5y agoOther comment mentions difficult onboarding process at Toptal with 3 interviews, is this also your impression?
- vultour 5y agoIt's their whole sales pitch - "hire the top 3% freelance talent". You're not getting in through a casual 30 minute conversation.
- mgraupner 5y agoI understand, still would be interested in his experience.
- bckygldstn 5y agoThe interview process is onerous more than difficult: mostly leetcode style questions that need lots of practice for, plus a basic but time-consuming take-home task. And for me the scheduling was super difficult: the whole process took weeks, with the only times available at odd hours West Coast US time, and my recruiter flaking and rescheduling once. Beyond some basic level of coding, it's more a test of patience and time.
- alex_suzuki 5y agoShameless plug: if you found the article to be relevant for you, you might also enjoy my write-up on the same topic. 2019, but still relevant. https://blog.classycode.com/going-freelance-as-a-software-engineer-some-advice-13c4064c72ce https://blog.classycode.com/going-freelance-as-a-software-en...
- tortila 5y agoI appreciate you sharing this article here, it's very helpful!
- jmconfuzeus 5y ago
- mobilio 5y agoEven with medium/large companies there is lot of issues with them.
- anovikov 5y agoI've been through it. Eventually you simply start seeing it as a game where you either win or lose. In 90% of cases, outcome for the client is inverse. 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.
- ivanhoe 5y agoWell, of course that hiring a consultant to lead the project for you will cost you more than not paying anything to your co-founder who works for stock only. If you can find a co-founder with both the expertise and will to work just for some hypothetical money on the end of the rainbow, great for you, you should go with it. 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".
- anovikov 5y agoThing is, anyone working for money and also acting as a gatekeeper at distributing more money will have a conflict of interest impossible to ignore. Especially when the person is from a low-trust society, as facilitated by freelance sites. And, these people are better skilled at negotiation/bullshitting AND can work "cheaper" (or so it seems) so they will always have an upper hand in negotiations vs good ones, unless the client is deeply technical - but in this case, read above, he'll manage devs himself and hire them individually => no potential for a custom software dev company there.
- gexla 5y agoYou're selling a product (service.) You need to market the product. You also need to handle administration of the business or outsource those tasks. Regardless of who is putting in this effort, your business needs to pay for it (your time or the time someone else puts into it.) Add to that, self-employment taxes, insurance, sick leave, vacation leave, equipment, office, utilities, etc. Anything you aren't charging for, you're subsidizing. That's ABC stuff. I don't like the word freelancing, because people take the label with a bunch of assumptions, which may not be correct. The language "the most important thing" is also troublesome because it may put you in the wrong frame. The reality is that running a business is a common complex thing. It's like relationships, many people are in them, but being such a common part of life doesn't make them easier to figure out. Society gives you basic scaffolding, which you need to use or not use as basic building blocks. Come to the problem with an empty cup and start building from scratch. And then it still isn't easy, as many people get caught up in details which isn't necessarily giving back the same return on the end result. My heuristic is to start with the envisioned end-result, work backwards and then build a plan going forwards again. The entire time, you have an eye on that end-result and asking if what you are doing is serving that end-point. And then, as Tyson said, "everyone has a plan until they get punched in the mouth." But a plan is better than no plan. There's no "the most important thing." It's more complex than that. You have to approach a complex problem with agility to shift frames. Be creative. Be curious. Ask questions. Do research. Answer the questions. Every article about "this is how you do <insert complex thing> is missing massive amounts of detail. Also note, there is a goldmine of articles on making money on building software in HN. Do a search. If you stop at this thread, you're seriously missing out. And further reading on detail in life... http://johnsalvatier.org/blog/2017/reality-has-a-surprising-amount-of-detail http://johnsalvatier.org/blog/2017/reality-has-a-surprising-... ETA: This is more about the mindset than the nuts and bolts. There are tons of golden posts here on the nuts and bolts. Do a search and see what pops up with the most votes and comments.
- jacquesm 5y agoApologies for the threadjacking but I think I did a better job writing this up a decade ago. https://jacquesmattheij.com/be-consultant/ https://jacquesmattheij.com/be-consultant/
- chrismorgan 5y ago> Sure you have to pick up a phone, but if it lands you a $2,000 deal that requires 10-20 hours of work, then why are you upset? Because I have to pick up a phone. Phones are scary.
- jacquesm 5y agoWhy do you feel phones are scary?
- skinkestek 5y agoNot OP but everything that is not written is scary. Suddenly you have someone telling you what you told them and starts wondering: did I really promise that? (Written doesn't prevent people from trying that trick, as one particulariy brilliant but not very pleasant guy tried to tell me: "yes, <my name> that is what you wrote [in the mail] but not what you meant." However, in these cases I have a written record and I am confindent with myselves and that nasty person can bugger off.) Not saying one should never talk to people on the phone but when one are stressed out and stretched out thin it is not high on my wishlist.
- fsloth 5y agoI hate phones as well but I've developed myself a ritual for alleviating th burden of anxiety-causing calls. Maybe this helps someone else as well: 1. Take pen and paper 2. Write a brief script how to start the call. Just sufficient amount of notes that you have a clear and concise agenda 3. During call take notes 4. If you don't understand something, repeat for the other party what they've said. Not in a way that it can be understood you agree with them as this can become a really problem with business dicussions, but using phrasing as "Can I repeat what you said so I am clear on this. According to you..." 5. At the end of the call, if there are topics that should be handled by you or the other party, review what was agreed topic by topic. I generally find people appreciate this structured approach in calls. At least it reduces most of the anxiety from my part to minimum.
- Nextgrid 5y ago
- pknerd 5y agoI have done freelancing for many years but I prefer FT job over it. The reason is piece of mind. You don't have to worry about your financials. Running a business or SAAS business is also better
- nickjj 5y agoAuthor here, thanks for submitting this. If anyone has any questions about anything let me know. The post is meant to be a getting started guide. Beyond answering questions here I'd be happy to follow up with additional posts about specific topics if there's interest.
- kraig911 5y agoSo I take it your'e still freelancing?
- nickjj 5y agoYep.
- notreallyserio 5y agoWhat would you say your hit rate is on your cold calls, and/or what is a realistic hit rate?
- nickjj 5y agoThere's so many deciding factors that go into this. There's timing, you, them, the situation, etc.. It could be a specific percent today and a different percent 2 weeks from now. I never really payed attention to quantifying these types of stats because I think as an individual your sample size is going to be too small to get meaningful data out of it. In my mind it's always a numbers game where the only thing that matters is if I land a gig or not. I tweak things based on individual calls and kind of use my gut to guide me. It's not the most scientific thing but I don't think personal sales with a small'ish sample size is going to be purely scientific. So much of it is dependent on reading the other person in real-time and adjusting as you go. When in doubt honesty and less "hard sale" tactics have worked well.
- hackerfromthefu 5y agoYou mention getting numbers as you walk around town, what kind of rates do you charge if this converts into a gig?
- deleted 5y ago[deleted]
- MrJagil 5y agoThis is generally good advice, but there is a caveat to the point about networking: it dilutes you. selling out is a real thing, I've found, and the more you care about others and their whims the less of yourself will be left in the work. This is fine if you work in marketing, for example, where your job is to sell someone or something else, but if you're a product person, be careful. If you are a product person, i recommend slowing down, think about stuff and dedicate yourself to the parts of your work and the relationships you find meaningful. It pays less, at least in the short term, but it is quite nice to feel true to yourself.
- saviomartin 5y agoFire writing!
- jackconsidine 5y agoI started a freelancing business in 2017 that ultimately involved me freelancing and cutting my teeth. Stuck with it and after a long struggle finally broke through. Some things I've learned: - Passive marketing just won't work early on. That means spending time on your website, buying Google Ads etc will likely only be dead-ends until you've established yourself. (The exception might be writing niche content about some industry if you happen to know one well). - I've used all of the freelancing platforms- Toptal, Upwork etc. You can make good money but you probably won't grow your business. Your objective if you're trying to grow a business is to scale up, and these platforms mandate that you're the one who has to do the work. I know there are Upwork firms, but I think they're worthless. Oh and Thumbtack is a scam. - The Meetup angle didn't necessarily work for me, but I've learned that going to non-developer meetups are more fruitful, if you're willing to learn about an industry. - The low hanging fruit in 2022 for finding clients is probably investing 15 minutes a day into building a Linkedin network (trivial and you don't need to pick up a phone :)). That means growing your connections, and learning to search for people looking for a developer for X, Y, Z, filtering out full-time hires etc. - Actually the lowest hanging fruit is referral business, so when you get your first clients do a great job and send them emails every few months reminding them to put you in touch with anyone they know. - When a client asks you to do something extra always say no. Always. If they're a great client, do something extra that they didn't ask for. This sounds insane, but the second you do submit to doing an extra request, a client will subconsciously discount your work and time and take it for granted. It almost never wins kudos, almost always wins more requests. I've seen this happen 35+ times. When you do something they didn't ask for, they tend to be more appreciative and touched. - The following are essential business processes you should set up if you want to grow: task management (Github issues for me, make sure to adopt a task format with predictable attributes whatever you use), communication (Slack, invite my clients to a dedicated channel), CRM (I use Hubspot which is free for just CRM), and a project cycle. - By project cycle I mean a contract where you're cash-flow positive, i.e. charge hourly deposits up front as much as possible, as well as defined expectations. What happens when the project finishes? How do you prevent scope creep? - PayPal invoices are nice but they were my biggest expense, 3% of my revenue! Do ACH if possible, or Wire Transfer if the fixed fee is less than the PayPal cost. I even set up a consulting business for invoicing just because this is such a big issue [1]. But don't optimize this until it's worthwhile. Feel free to get in touch if anyone needs any help getting established. My email is my HN username +3@gmail.com [1] https://receivable.dev https://receivable.dev
- a_c 5y agoActually at what point does one become not freelance but a studio? I find people/company treat you at a spectrum of seriousness, payment dueness in particular, between "freelance" and studio. Is it a business registration, team size, or mentality? Otherwise I would suggest not to use the term freelance but to start your own studio house instead.
- jcadam 5y agoThis seems like a good idea. Present yourself as a business, and don't make it obvious you're a one man show (I'm not saying lie, I'm just saying watch how you present yourself).
- hackerfromthefu 5y agoPart of this is in the way you present - do you have a business structure, do you use all the right terminology and language? I personally say I am a small business and rely on the funds coming in, and cannot afford to loan money to a large business then get into a position where a large amount of money is outstanding. The payment terms are part of my negotiation before I sign the contract, and go on the contract. This includes politely informing that I stop work if the owed balance gets to the size I specify, typically two weeks fulltime. Having got agreement at the executive level, it often gets tried on anyway, but the very first day it's late I start letting people know, and consuming their time, and reiterating reasons why its setup to pay. I follow the chain of people to get actual contact to the accounts paying person and build a personal relationship with them, as an individual they have a commitment to paying rather than just another bill on the stack. An individual who will ring them for a person plea, plus consume their time, if they don't pay as agreed. This reminds them it's an issue and that my work continuing relies on them paying, as they agreed. I do this politely, but clearly, and conscientiously. I find this significantly increases my chances of getting paid properly. The critical time for this is when the first, and perhaps second bills are paid. Once they are trained that yours is a bill to to pay without games, it tends to become smooth sailing. Also, in the case where it is delayed - stop working. This is critical. If you work when they are not paying as agreed you're undermining your main leverage and will possibly have big problems. Be polite, always, yet clear and firm about the agreements made, and be ready to walk away and find new work if necessary. Usually late payments will be resolved in days to a week and if it's taking longer then put your effort to finding new work.
- deleted 5y ago[deleted]
- wnolens 5y agoI was a freelance/contract developer for 2 years, went back to full time. And I had a golden ticket (a company had full time amount of work avail, I only did and billed for 20h/wk, paid every other week). Now that almost all dev work is going to be remote friendly, The only advantage to freelancing that I can see is the flexibility to work less than 40 hour weeks, or take more time off than vacation time you're allotted. That freedom is purchased with a lot of stress and uncertainty, and may not actually result in that much freedom if you're semi-actively always looking for leads. Ultimately I found the type of work companies go to freelancers for is terribly uninteresting most of the time.
- indymike 5y ago> Now that almost all dev work is going to be remote friendly, The only advantage to freelancing that I can see is the flexibility to work less than 40 hour weeks, or take more time off than vacation time you're allotted. Oh, there's a few more reasons: taxes (paid in arrears, after expenses), carry your own insurance/benefits (can work really well if you are young & healthy), business can own property, corporate veil, separate business finance from personal, have more than one client, etc... > Ultimately I found the type of work companies go to freelancers for is terribly uninteresting most of the time. Sometimes. Other times it can be better.
- sjf 5y agoHealth insurance is not pro. At a big four I am paying ~$50/month for great health insurance, freelancing it was 650 from Covered California and involved repeated heated calls to every party involved.
- indymike 5y ago> Health insurance is not pro. At a big four I am paying ~$50/month for great health insurance, Most employers aren't passing through the whole premium. With my current company, we're covering 85% of the premium for our employees, so they see some token amount out of their paychecks, but the actual premium is a lot bigger than $50/month. It's hard to beat HC insurance from a big employer. When you have to buy your own, it can work out as you usually can get a higher hourly rate than an employee by 25-30%. You also avoid double deductibles when your employer changes the plan changes mid-year. You also avoid COBRA if you quit or are fired.
- legerdemain 5y agoHas anyone had luck approaching strangers at Meetup.com meetups, as the TFA recommends? My experience has been that people mostly go to meetups with friends, to talk to their friends, and are generally averse to talking to complete strangers without some strong pre-existing connection (former classmate, colleague of spouse, etc.). I went to a few dozen tech meetups in South Bay with nothing really to show for it.