Skip to content

My Advice to Tech Freelancers

Why freelance?

I am risk averse.

Leaving the security of a full-time job and all that comes with it — a steady salary, healthcare, paid time off, and helpful coworkers — was complicated for me. I’ve always had a conservative view of “work,” and striking out on my own didn’t seem viable.

In 2020, I was feeling burnt out and decided to leave Thumbtack. Throughout the next couple of years, I took contracts while continuing to interview off and on. After starting two full-time jobs and quickly deciding to leave them, I realized I needed to reevaluate what I wanted to do.

Ultimately, that meant more time with my family and less stress. And I wanted to focus on design systems. With my generalist background, I could offer a full suite of design and development services, and in late 2022, I decided to commit to working independently.

Your reasons will vary, but it’s important to be honest about why you’re making this change and whether you have the confidence and experience to make it.

Get work

The biggest challenge to freelancing is, of course, finding a steady stream of work. The reality is that there simply aren’t many options for freelancers other than to find it themselves.

Based on conversations with freelancers and my experience, referrals from your network will be the most significant source of leads, especially when you’re starting. Reach out to everyone you can think of to let them know what you’re doing and your services. You never know where a referral can start.

Secondary sources are communities and networks that can surface connections and jobs. LinkedIn is an obvious example, but many design and development groups on Slack and Discord are easy to join. For me, the Design Systems Slack community has been a solid resource for networking, asking questions, and perusing job listings.

Don’t be too discouraged by jobs listed as “full-time.” Try to find a contact at the company—their design or development blog authors are a good place to start—to see if they’d consider a contract position. They may be open to it if they have trouble finding the right candidate.

A third option is joining companies like a.team and huddle.works that operate similarly to agencies. Once accepted, you set your hourly rate and request to join small teams working remotely on short-term projects. Though this differs from working for yourself, it can be a helpful supplement. (I’m a member of both but haven’t used either yet.) Sites like Upwork and Fiverr are also options, especially if you’re new to your field and want some experience, though these are typically at the bottom of the pay scale.

Position yourself

Among the first questions to consider is the type of work you want to do and the range of work you’re willing to do. A wider net will produce more leads and the risk of false positives. A narrower one means fewer leads but will often result in a stronger connection.

Early on, you may need to accept a broader range of less desirable work to establish your reputation, but eventually, you can concentrate on more exciting projects. Finding this balance will take some time.

I initially focused on the development side of design systems work. When I realized that my clients, especially small startups, benefited more from design and development deliverables, I dusted off my design hat and broadened my offerings.

Set pricing

Among the hardest things to do is decide what to charge for your work. Determining this forces you to consider your worth by weighing your experience level, your confidence in your work, what is reasonable, and the industry standards. Unfortunately, there’s no easy calculation, but there are some ways to have some peace of mind.

Write down what you need to make to live. You have bills, rent, insurance, dependents, taxes, and any number of other things to take care of. What would you be satisfied with? This process at least gives you a ballpark figure you can adjust over time with more data.

Try to find other freelancers doing similar work and ask what they charge. While salary discussions in the workplace are uncommon, fellow freelancers recognize that their only support system is each other and are often happy to share and help.

If you are connected to a Head of Design or Engineering Director, ask them. Usually, only a few people with titles like these are privy to what their companies pay contractors.

Lastly, remember that you may want (or need) to charge different rates for different clients. The same work can be worth more to one company than another. Their geographical location can also play a part. For example, European tech workers are generally paid less than their American counterparts.

Understand the types of work

There are several different ways to charge clients. You can work by fixed price, hourly, or retainer.

With a fixed price, the onus is on you to propose a well-scoped project that details — with as much precision as possible — what you will deliver, what you won’t, and when. This arrangement means you don’t have to track hours (though you may want to), and the client knows their costs up-front.

I generally start this process with a proposal in Google Docs to capture all the details. Once all parties agree, I will either send a contract using PandaDoc or, more commonly, will sign their contract. A 25% deposit is requested to start work, with the remainder invoiced at the end of the project.

Working hourly makes more sense if the work is difficult to estimate. This often means less pressure — you work at the pace you need to — and you’re paid regularly every two or four weeks. Weekly hours usually have an upper limit to prevent the client from getting an unexpectedly large bill. I’ve been fortunate that many of my clients have asked me to continue to work hourly after our initial fixed-price contract is complete.

Retainers are less common but can be beneficial when the workload fluctuates, and both you and the client would prefer a predictable, fixed cost. I’ve never worked on a retainer.

Scope and set boundaries

Getting a new contract can be exciting, but make sure you and the client understand exactly what work you will and, just as importantly, won’t be doing, along with any timelines and other deliverables.

Some clients may intentionally take advantage of your goodwill, though they more commonly ask for work without knowing how difficult or time-consuming it actually is. You may feel obligated to agree to avoid rocking the boat, but being explicit when initially creating the working agreement can avoid these awkward situations.

One approach is to include in your contract a stipulation that requested work outside of the scope can be done on an hourly basis, either in parallel with the project if it’s needed right away or after the project is complete.

Project confidence

When engaging with the client, it’s important to be self-assured. If you’re already outgoing, this may be easy for you. I had to learn this over time. You’re hired for your expertise and decision-making ability. The client likely doesn’t have the time to answer continual questions and will appreciate that you proceeded with your best judgment rather than waiting for clarity.

Get client endorsements

Once you’ve completed your work, and assuming the project went well, consider asking your client for a short endorsement. A couple of sentences will do. Added to your portfolio, these quotes provide evidence of a good track record of good work with real clients.

Questions?

I volunteer at ADPList and am happy to talk to you about freelancing, design systems, or other related topics. Many talented mentors are available to help you with any number of career and professional growth questions.

About the Author:

Tom Genoni is a designer and developer helping small teams establish design systems with Figma, React, design tokens, and everything in between. You can find out more about his work at genoni.dev.

Back To Top
Apply Now