[IMPACT]
Introduction
This project is a part of another project that develops a smart contract based hiring platform on Cardano called Bworks.
In this challenge we focus to create a tool that helps Cardano developers have right paid jobs in the context of the Catalyst project and beyond.
By this way the project will direct map developer's income to their abilities, guide them the right way to grow by providing specific, actionable data that will lead to growth of Cardano developer resources, let them love & focus work more.
Additionally, this also leverages everyone technical or non-technical to become a proposer with available on demand resources. This also leads to an awesome picture.
An example
Someone is a non-technical person he got fund from Catalyst and wish to have a developer to fulfill their project:
- He doesn't even know how to check if a developer is capable of working out the project so freelancer.com and linkedin.com are not a choice.
- He wishes to make sure the money is paid only when the product is built and delivered.
Also there is a developer who is capable to work out project but:
- He doesn't have linkedIn or resume, he needs a job with less time for interviews, submitting a resume, and code challenges.
- He wants to make sure his work is paid 100% even in cross countries before he starts to work.
bWorks is to solve above problems, proposer then has product delivered, never lose money for uncompleted work & developer has money for their work, the payment is always committed by smart contract.
Features
- High Accuracy of job suggestions for developers and bid suggestions for proposers.
- Seamless service that covers all aspects of a freelance hiring process.
- Payment and product delivery are protected by Cardano Escrow smart contract.
- No Bias feature meant the selection only depended on ability to carry out a posted job.
- Users have to verify its ADA wallet which is used for all payment transactions in bWorks.
Functions
- Post job for proposers.
- Suggest matched JOBs and place a BID for job developers.
- Suggest matched BIDs and select a right BID for proposers.
- Call the deployed smart contract to handle freelance agreed terms.
- Manage the progress until end by smart contract:
- In case a developer gets a posted job done the money is transferred to the developer account.
- In case the developer fails to get a posted job done the money is returned to the proposer account.
- Provide developers insightful and actionable reports to grow their abilities ahead in the future in terms of countable income.
Extra functions:
- Task management.
- Loyalty and reward programs.
- Developer grouping to bid or to split a task.
- Code quality ranking.
Architecture & main modules
bWorks contains off-chain code runs on AWS infrastructure and on-chain code runs on Cardano blockchain network. The architecture include backend REST APIs, 03 web frontend apps, 02 smartphone apps and the deployed smart contract on Cardano:
- Backend REST APIs & smart contract off-chain code.
- The deployed smart contracts on Cardano blockchain network.
- Frontend apps for:
- Employer
- Job seeker
- Admin
- Mobile apps for proposers and developers.
Project tech stack: NodeJs, React and React native, MongoDb, Redis, Plutus and MarloweJs
Impacts for proposers, developers:
- Everyone can become a proposer for their owned ideas then hire freelancers through bWork.
- Any developer can find paid jobs by their abilities with suggested jobs via bWork.
- Remove all concerns about job done and payment for proposer and developer.
By this way we will help developers focus on work, increase their income and grow their ability. It directly unblock developer's potential and attract more capable engineers to join Cardano.
Project resource URLs
Present: https://docs.google.com/presentation/d/1tXzy3C9DIycPjgOv-3pes23w8LIECamsZkPIC10DrYM/edit#slide=id.g11a419f5d9f_0_0
Home page: https://bworks.app
Github: https://github.com/adaboys/bWorks
Align challenge KPIs
- By solving the deep concerns of developers, increasing their confidence and excitement about Cardano, this project will lead to growth of Cardano developer resources, unblock Cardano's potential by transforming more ideas to products.
- From a proposer perspective the project also backed them with on-demand resources that leverage them to spark more ideas.
- Since most blockchain projects are open source the more project success the more open source libraries and frameworks came out. This solved exactly the KPIs of challenge especially with creating more open source tools, libraries, framework and growing Cardano developer resources in terms of quantity and abilities.
Communication & marketing
- This project intends to apply to Catalyst so the communication and promoting should move through communities and mostly by product itself.
- Once people benefited through bWorks e.g developers increase their income, non technical people can be an author of an open source library. This is the best way that product is communicated out and marketed.
There are still some risks that might block the move of project into success, these risks need to address out in advance and have solution to solve. this strengthen team's confidence moving forward.
List of saw risks & corresponding response to solve:
- Risk: Lack of Cardano smart contract resources for developers e.g documents, libraries.
Solution: spend more resources to research, prototype in advance to select the right development strategy.
- Risk: The limitation of current smart contract capacities to execute the complex payment model e.g split one smart contract into sub-smart contracts.
Solution: have reasonable expectations at this time, find a solution with off-chain code.
- Risk: The limitation funded budget lead to limit of resources to fulfill project.
Solution: prioritize to use internal resources from primary members, have reasonable expectation, narrow down additional works.
- Risk: The difficulty to have real data set big enough to practice the accuracy of matching algorithm.
Solution: generate lab dataset to simulate the near real life data set.
- Risk: The high expectations of users for a new application make lose team's excitement
Solution: focus on what really matters.
There might be some other risks may happen during development period, but they are not critical enough to block the move.
[FEASIBILITY]
Q2-2022
Project planning and POC (proof of concept)
- Project outline, break down project into workable tasks and member assignments.
- Setup development environment: gitHub, staging server.
- Technology research and POC
- Expect the project to be funded and start development.
The countable outputs of this period are:
- Developers are proficient and have the right technologies, libraries, and framework for the project.
- Got design patterns for each domain e.g backend, front end and Cardano smart contract.
- POC works to verify the possibilities of solutions, the abilities of developers .
Q3-2022
Develop main project components:
- Common functions, libraries and utils
- Search API
- REST fetch library
- Authentication & authorization APIs
- Developer APIs and app
- APIs and logics
- Select matched posted job
- Bid a job
- Negotiate contract terms
- Manage fund
- BI report
- Trend of Cardano job demand
- Personal performance and assessment
- Insight KPIs and comments
- Loyal program and reward
- Web frontend app & UI/UX
- Get suggested job list
- Bid a job
- Negotiate contract terms
- Manage fund
- BI report
- Loyal program and reward
- Mobile app
- Get suggested job list
- Bid a job
- Negotiate contract terms
- Manage fund
- Proposer APIs and app
- APIs and logics
- Post a job
- Select a bid
- Negotiate contract terms
- Manage fund
- BI report
- Web frontend app & UI/UX
- Get posted job list, post a job
- Select a job
- Negotiate contract terms
- Manage fund
- BI report
- Mobile app
- Get posted job list, post a job
- Select a Bid
- Negotiate contract
- Manage fund
- CMS APIs and app
- APIs and logics
- Approve a job
- Ban a account
- Monitor jobs, bids, smart contracts
- Manage revenue
- BI report
- Web frontend app & UI/UX
- Approve a job
- Ban a account
- Monitor jobs, bids, smart contracts
- Manage revenue
- BI report
The countable outputs of this period are:
Above functions are working properly separately e.g REST API to bid a job perform exactly via POST FETCH and also with integrated developer app then result right data to proposer and cms apps.
Q4-2022
Develop main project components:
- Smart contract
- Smart contract on-chain code
- off-chain code to call & monitor smart contract
- Fetch blockchain utils
- Integration apps, off-chain and on-chain codes
- Integrate all components to make sure it works together
- Deploy smart contract to Cardano network
- Integrate off-chain code with deployed smart contract and apps
The countable outputs of this period are:
Functions are working properly separately and integratedly, e.g data flow is working right across proposer, developer and cms apps, off-chain code is able to call the deployed smart contract.
Verify the working of application to meet designs and project KPIs:
- Suggested right jobs to developers & right bid to proposers.
- Developers and proposers are able to negotiate smart contract terms in real time.
- Submit agreed terms to a smart contract on Cardano network.
- The deployed smart contract handles the contract terms, transfer or refund money right as designed.
- Application architecture has clear design, runs fast and stable.
- Code is clean, easy to maintain, extend.
Expect all functions are working properly as designed.
Deploy off-chain code to AWS infrastructure, on-chain code to Cardano network and make sure it is ready to go, the product then is available for everyone to use with enough documents.
Q1-2023
Beta release and go to market
Select 10 Catalyst proposers to invite as employer user, 10 Cardano developer to invite as job seeker as pilot users to try product and give feedback:
- How post job and select bid functions work for proposer
- How job selection and bid functions work for developers.
- How the smart contract handles the negotiated terms and can it make sure posted job is done for proposer and money is transferred to developer only when posted job is done.
Once we have good feedback from pilot users it is time to publish product marketing to a massive number of users, groups.
The cost to complete this project include cost to complete 03 main end user applications for different type of users (developer, employer/proposer & administrators), smart contract off-chain & on-chain code and other core common components e.g search, fetch libraries. The development cost is used to pay for the works of estimated 06 engineers in funding period.
The detail of breakdown tasks of each below costed works are in "project timeline" section.
Cost of development backend APIs & apps for Developer
- APIs and logics: 290 hours * 30 $/hour = 8.700$ included below functions with estimated amount:
- Select matched posted job & place a bid: 2.000$
- Negotiate contract terms & manage fund: 1.600$
- BI reports & trends: 2200$
- Loyal program and reward, work assessment: 2900$
- Web frontend app & UI/UX: 200 hours * 30 $/hour = 6.000$ included below functions with estimated amount:
- Suggest & bid job: 2.000$
- Contract negotiate & manage fund: 1600$
- Loyal program, reward & BI report: 2.400$
- Mobile app: 130 hours * 30 $/hour = 39.00$ included below functions with estimated amount:
- Get suggested job list: 1.200$
- Bid a job: 800$
- Negotiate contract terms: 1.000$
- Manage fund: 900$
Summarized value: 18.600$
Cost of development backend APIs & apps for Employer/Proposer
- APIs and logics: 170 hours * 30 $/hour = 5.100$ included below functions with estimated amount:
- Post a job & select a bid: 2.000$
- Negotiate contract terms & manage fund: 1.800$
- BI reports: 1.300$
- Web frontend app & UI/UX: 130 hours * 30 $/hour = 3.900$ included below functions with estimated amount:
- Select a bid & negotiate contract terms: 2000$
- Manage fund: 900$
- BI report: 1.000$
- Mobile app: 120 hours * 30 $/hour = 3.600$ included
- Get posted job list, post a job: 1.000$
- Select a Bid & Negotiate contract: 1.600$
- Manage fund: 1000$
Summarized value: 12.600$
Cost of development CMS APIs & app for Administrators
- APIs and logics: 160 hours * 30 $/hour = 4.800$ included below functions with estimated amount:
- Approve a job & ban a account: 1.700$
- Monitor jobs, bids, smart contracts: 1.000$
- Manage revenuen & BI report: 2.100$
- Web frontend app & UI/UX: 150 hours * 30 $/hour = 4.500$ included below functions with estimated amount:
- Approve a job & ban a account: 1.600$
- Monitor jobs, bids, smart contracts: 1.000$
- Manage revenuen & BI report: 1.900$
Summarized value: 9.300$
Cost of common functions, libraries & utils development: 150 hours * 30 $/hour = 4.500$
Cost of smart contract off-chain & on-chain code development: 230 hours * 30 $/hour = 6.900$
Infrastructure cost: 03 T2 small server 80$/month * 12 months = 2.880$
(This cost will be paid to Amazon AWS for our development servers)
Total cost of project to request: 54.780$ - fifty four thousand seven hundred eighty dollars.
Thang Tran
Practical blockchain engineer, software expert, blockchain enthusiasm, fan of Cardano technologies.
Experiences: Capable of designing & developing software at all levels. more than 10 years of experience at development & run the high volume, high availability critical mission applications. More than 04 years as a blockchain engineer. Experienced with Cardano general technologies, Plutus, Marlowe, smart contract, tokens
Project responsibilities: Product design. Engineering management. Main full stack, blockchain engineer.
Contact:
Duc Tiger
ADA lover, running one of largest Cardano community group in Vietnam, CA leader.
Experiences: Business owner, digital marketing, community management, data analysis. Experienced with Cardano economic model. Full time working and well understanding the Catalyst project.
Project responsibilities: Product features, marketing management, finance management, community influencer.
Contact:
Trong Nguyen
Software and cloud engineer, Cardano's fan.
Experience: a software engineer and IT specialist who worked for many big IT tech firms in Japan such as GNT, ISFNet, and IBM. Experienced in software product management, digital content with 10 years of mobile app development for Android and IOS. Experienced with Cardano technologies. CA and well understand Catalyst project.
Responsibilities: Product management, Digital content, Project Management, Software engineer.
Contact:
Toan Nguyen
Senior full stack & blockchain engineer
Experience: 8 years of experience with software and blockchain development, capable to implement software at all levels, run high volume products.
Responsibilities: Backend & APIs leader - APIs, blockchain & full stack.
Contact:
Thanh Nguyen
Senior full stack engineer
Experience: more than 8 years of experience with software development backend, frontend and mobile apps.
Responsibilities: Frontend and mobile apps leader - Frontend, mobile development & full stack.
Contact:
Oanh Ngo
Senior QA/QC
Experience: more than 8 years experience of QA/QC leader.
Responsibilities: QA/QC leader, develop test scripts.
Contact:
And other resources from AdaBoys Lab: https://github.com/adaboys
[AUDITABILITY]
Please describe how you will measure the progress and the development of the project?
The progress and development process are measured and tracked by the number of "DONE" tasks & "DONE" groups of required tasks which define other large work or software functions. These "DONE" tasks & "DONE" group of required tasks meant software functions are developed & tested, and works are completed.
Clear and trackable development progress
- Use TDD method for development process.
- Project will break down into small tasks then assigned to each member via Redmine (a project management software).
- Write UNIT test code in advance before developers start product development.
- The task is confirmed to be completed only when the UNIT test result “PASSED”.
- Use Github auto deploy to push the latest code to the staging server to make the development product be available to everyone.
- Weekly report that lets everyone be aware of the whole process.
Quantitative indicators for development process:
- The number of task/function “PASSED” unit test code.
- The number of benchmark and QC tests “PASSED” for end user functions.
- The number of gitHub commits and merges.
- The number of tasks gets “DONE” in redMine.
The development success consideration
- 100% main tasks are "done"
- 100% unit test for main task is "passed"
By this way the progress is clear, measured and tracked.
Please see detail at breakdown tasks success KPIs or our present at the attached link.
The definition of success for this project from product development points of view
- Main software components are developed and tested: 100%
- Extra aspects & extra software components are developed and tested: 70%-100%
- System operations KPIs: 70%-100%
- Product is published and available to users: 100%
- Extra factors of product delivery: 70%-100%
The definition of success for this project from business points of view
- Application has a large number of submitted & DAU users.
- Application becomes a popular, trusted services for developers to have paid jobs.
- Developers like to use reports from bWorks to grow their abilities to adapt job market.
- Large number of Cardano developers are growth through the application.
- Large Number of projects are developed through the application lead to a large number of open source libraries and framework.
- Number of submitted and DAU users: we expect to attract around 60% of catalyst users, 40% of other Cardano users and around 100k external users total 200-500k will be Bworks users in first year after release: 80%-100%
- Rate of user that satisfied with service from product: 70%
To meet above goals we must accomplish the below success KPIs across development and delivery phases:
Success KPIs of main software components development
- The accomplishment of function and component development: functions, components, scripts are developed and tested in terms of quantity and functionality: 100% they are developed and tested.
e.g: UI for proposer to post job, UI for developer to bid job, the smart contract is executed as expected.
- The accomplishment of full product development: all sub-components are developed and tested. Full application is formed, tested and meets designs: 100%, e.g product on staging server is available for:
- Proposer to post a job
- Developer to bid a job
- Smart contract runs smoothly to manage developer progress until developer gets job done and fund is transferred to its account.
Success KPIs of extra software components & aspects
- Code quality and visibility: source code is clear, easy to re-use and maintain: 80%-100%.
- BI reports are valuable to users: 80%-100%
- All code is public at registered Github link that available for other people to view, improve or re-use: 100%
Success KPIs of product delivery
- Product is released as scheduled timeline, available for everyone to use at public url through the internet: 100% e.g The released product will be available at: https://bworks.app
- Main functions are available for user to use: 100% - proposers and developers are able to submit an account to find resources or find jobs. Deployed smart contract then rule the rest of progress.
Success KPIs of system operation (ms is millisecond)
- System uptime: 99.9%
- Basic access latency: 20-50ms depend on your internet connection: 100%
- Post job for proposer, bid job for job seeker latency: 10-20 ms, realtime.
- Find a matched job for a developer latency: 10ms.
- Find a matched bid for a proposer latency: 10ms.
- Freelance contract terms negotiation: instanced and real time.
- Submit smart contract to Cardano blockchain network latency: 50-1000 ms depend on Cardano network.
- Security: 100% unwanted access is dropped and all data is safe.
References
- Success criteria: success KPI >=70%. KPI >=70% means a task is done (function is developed & tested or work met expectations), the rest 30% used for outstanding assessments for factors that surpass success criteria. e.g a develop an API task has KPI 80% means it is DONE and code runs faster than expected.
- The meaning of numbers in % indicate the percentage of completion of task use in success KPIs:
- 0%-70%: the task is not completed, it is 'on-working'.
- 70%-80%: task is completed & tested or work is done, good to go.
- 80%-100%: task is completed and has excellent output e.g response time faster than expected.
We expect to meet above KPIs that clearly define BWORK as a successful project.
Please see our visual and detail success KPIs at the attached present link
This proposal is a part of our focused efforts to adopt Cardano technologies in to true life.
The first proposal that we have been funded in the Fund7 is cPAY - TrustOrder Anti SpamOrder.
In this fund-8, we are submitting some more proposals that utilize the power of blockchain and smart contract to solve some existing toughest problems & create new values across some domains:
Your vote for us is a hand to help solving problems for human life, creating more value for the better world.
Let's "VOTE" for us.
Thank you and kind regards.
SDG Rating
Not at all