How Prolet works (in depth) — Part 2

Rahul Bhattacharya
Prolet.pro
Published in
4 min readFeb 25, 2018

So up until now we have described why we need democratic workplaces, how we can conceptually achieve it and started to describe an implementation of it through Prolet. In my previous blog i showed how teams are formed democratically. Now lets talk about Prolet from a customer perspective, the person with the money and needs a particular piece of work done.

Login with a customer account

The previous blog we used 2 addresses on the rinkeby network as Professionals. Now lets use another address as a customer (please note a same address can be used for both, and the user role is not saved into the blockchain).

Switch role to customer

Set the above address in Metamask and click on the login button. Then head over to the profile tab and switch role to Customer

Create a Gig

Now head over to the Gigs tab. Click on the “ADD A NEW GIG” button. This opens up a form. Fill in the name, description, skills required to finish this project, end date and reward (the maximum Ether you are willing to pay). Click on Submit. On clicking on submit in Metamask, the reward money will be taken from your address and stored in the Smart Contract. Since the money is not getting transferred to a human, the Gig Owner does not have to worry about being cheated.

Once the transaction is successful you should see the new Gig inside the Gigs page. The status of the Gig is “not sarted”.

How Teams submit Bids on Gigs?

So now that the gig is there, lets see how a team will submit a bid. Lets switch Metamask to a previous user, who was part of the team. He now logs into Prolet, he should see the Gig under Gigs -> Other Gigs. Click on details to go to the details page. You can select the team from the “Bidding Team” pick list. Enter the “Asking price”(should be less or equal to the max reward the Gig is willing to pay). Click on Bid button. Remember this does not mean that the bid went through. This just created a request to be voted by the team.

Now if the other user in the team logs in, he should see the vote request for the bid. If this user approves, the bid will get accepted.

Once the transaction is successful the Gig owner will see the bid inside the gig detail page. He can choose to accept it. In this case the bid is with 1 ether, but the gig owner has parked 2 ether in the contract for this Gig. So the gig owner will be refunded 1 ether minus the transaction fees.

Once the transaction is successful the Gig work has now started. The panel color will change from orange to green, and the detail page will show status as “started”, assigned team as the teamId of the team whose bid was accepted, and the reward will switch from what the Gig owner initially promised to what the Bid asking price was.

Conclusion

So this is was how we can democratically initiate work. Notice the difference between traditional jobs. The team members don’t have to be colocated. The team does not need a manager, as team members vote on every decision. The monetary part of work is controlled through code (smart contract). Therefore the Gig owner can initiate Gigs with peace of mind without the fear of being cheated, and the same goes for the workers of the Gig.

In the next blog, we will talk about how to complete the Gig and how team members get paid.

Support coding for prolate by donating

ether at 0x71901238CAbFBf6A1Ed73DBB6D9dF4fF7b2834c4 ,

BTC at 1Mt9qNAZbEkNLg7s5mxj7BuY49kmrG9LXn

--

--

Rahul Bhattacharya
Prolet.pro

Author of skywayfinder app to navigate skyways. working on different things including blockchain, iot, Kafka, k8s