Hireling Freelance App

My role:
Product designer
Tools and methods:
Sketch, User flows, Principle


Using Ethereum blockchain, Hireling is a project-management tool for freelancers. Processes like collecting payment and ensuring work product delivery become automated and consequently reduces the stress and anxiety that comes with freelancing.


Current landscape

Freelancing opportunities often cause plenty of anxiety. Will the client accept my rate? Will I get paid promptly? Will I have to hunt them down? Ugh, scope creep!

While freelance projects are a flexible way to earn income based on time, workload and skillset, there's no secure method to ensure payment with immediate results. Enter Ethereum blockchain because it's a secure peer-to-peer methodology for exacting payments and assets.

Why Blockchain?

Blockchain is a digital ledger where information is stored chronological and publicly.

Information is immutable. This means it's pretty darn difficult to hack and falsely represent information due to its decentralization. Servers around the world are constantly validating the ledger to ensure the information is accurate with each other. Blockchain applications remove the need for intermediaries to provide trust which means the process can be cheaper and more efficient.

With blockchain at its foundation, Hireling ensures freelancers always have ownership over their work. It's written in this magical record-keeper humans can't change.

Ethereum smart contracts?

Smart Contracts are applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third-party interference. Your documents are encrypted on a ledger meaning no one can say they "lost" it. They're also backed up many times over. The system works on the If-Then premise and is witnessed by hundreds of people, so you can expect a faultless delivery. At the time, Ethereum is the most advanced code for processing smart contracts.


User needs

Clients need:

  • Upfront project fees
  • Clear due date
  • Single, central communication platform

Freelancers need:

  • Secure and reliable reception of payments from clients
  • Fewer emails
  • Safe method of sending "in-progress" work

Functional requirements

I had to make a list of what the app's functions should be before I began designing.

  • Login with a professional network like Linkedin
  • Port LinkedIn profile information to Hireling app
  • Job boards to locate and requests for contract projects
  • Chat feature for both parties to communicate
  • Enable payment transactions
  • Enable a way for both parties to agree that the project has been completed

User personas

I identified two types of users: the freelancer and the client. I was able to interview a handful of users that fit into either category, and created the following personas based on my interviews:

  • The primary user is the freelancer. These users are actively looking for a side hustle to afford their lifestyle. They want to improve their professional skill set.
  • The secondary user is the client. These users may have a company in its infancy and/or limited funding. They want the best bang for their buck, and are open to working with less-experienced freelancers.

User flows


How Hireling would work

Smart Contracts ensure payment by holding the project cost in escrow while the freelancer completes the project deliverables. If freelancer doesn't finish project by due date and approve release of assets to client, a refund is automatically given back to the client. Both the freelancer and client can approve or deny the work. Once both sides approve, the payment held in escrow will automatically be funded to the freelancer.

No more worries on getting paid for your work or making sure you get your assets. This can only be done through the use of blockchain technology.

This diagram briefly explains how payment remittance would work


Through some testing and iterations, I added a few design changes:

  • Attach a file or third-party document integrations
    Being able to send pictures or attach links were key functions some users pointed out. Some clients want to be a part of the process and sending pictures/links in-app made it easier to get project updates.
  • Revision limits
    Majority of people mentioned how setting a revision limit was crucial. It was important to make this prominent in design, and also provide a mechanism to edit the revision limit as needed. When either party made a change, the app would ping the other party to approve of the change.

App design and breakdown

Reduce anxieties within the freelancing process for both the creator and the client by creating a servicing app for freelancers based in the Ethereum blockchain called Hireling. This app reduces stressors that freelancing brings, for both the freelancer and the client.

Features include:

  • Posted job listings
  • Built-in chat platform
  • Third-party file integrations

Once project conditions are met, both assets and money are automatically exchanged thanks to Smart Contracts.

Chat feature between client and freelancer
Freelancer profile
Job board with ability to "favorite" and pin to the top
Notification when job request has been approved
Settings view
Client company profile and information with scope of work
Open project dashboard
Available methods on how to receive payment

Prototype of sorting through dashboard


This project was a result of a four-month long independent study of blockchain technology and its relevant use cases. For me to be able to design Hireling, I had to deep dive and learn what blockchain was. To further my understanding, I was able to code a local blockchain using Python and Postman.

Looking back, it may be best to simply create a service to hold money in escrow and provide a simplified contract versus an all-in-one platform complete with chat and document sharing. If that was the case, then Hireling could potentially be a web app versus a native app. This would make it easier to implement and users won't have to download another app on their smart phone.

It would also be cool to add in SMS updates whenever the freelancer and client updates a project or marked a project complete.