Freelance Platform For Writers
Industry: E-learning
Country: Ukraine
Description
Essay bay is a platform that connects professional writers to people who need writing services. The clients of this platform can order writings such as coursework, Essays, Term Papers, Research Papers, Thesis, Dissertations, Research Proposals, Business Papers, Health Care Documents, and many more.
By design, we had to build this platform in a way that makes it easy to use for both writers and clients. It consists of three parts: one for the writers, one for the clients, and the third one for the administrators of the site. Each of these sections was built as a separate website.
Client goals
With this project, the client required us to create Essay Bay from scratch, and this process included writing code for both the backend and the front end of the website. We also had to gather and input information for different sections of the platforms to make the website complete.
Main roles
Student client
The clients can register and also place orders for the writing services they need. While placing an order, clients are also supposed to add all the necessary information they need to be included in the writings.
Writer/employee
The role of the writer/employee is to offer writing services based on the needs of the client. It is also in the writers’ interest to make sure they provide quality work because, after each job, clients can rate their services based on how satisfied they are. Writers can also request orders that are suitable for them based on the topic and price (with the help of the admin).
Admin and Super admin
The roles of these two are to act as the intermediate party between the clients and the writers to ensure that each of them plays their part. So, they have to ensure the clients provide all the needed information and timely payments. On the other hand, the writers also had to provide quality work on time. In case of any misunderstandings between writers and clients, it is also the role of the admins to resolve such issues. They can change the writer after some time. Admins are also able to place an order instead of a client if, for example, the latter contacted via phone/Facebook and not through the platform.
Implemented features
User management
Email login: This section is for writers and clients who have to register with their preferred login details (email and password). They also have the option to change their password, edit users, and also block them if necessary.
The admins can view the list of all users, the orders created, order status, and order details. They can also accept or decline any order, select a writer from all who proposed their candidacy. The admins can also see whether the client has made the payment and if the writer has delivered the work under the agreed terms.
Note section
This section is for the writers. Here they can take notes regarding the work they are doing.
Reminders/Alarm Clock
We also implemented the option of creating reminders on the side of the writers.
The writers and clients would also be notified if something in the order has changed. For instance, a client will be notified when the work is ready.
Extra frontend features
We made it possible for writers and clients to register, view prices, choose topics, and the level of difficulty of the work. This feature is to ensure that the writers take on projects whose difficulty they can handle.
We also made it possible for writers to communicate with clients through the chat feature. However, all chats were supposed to go through the admin to ensure they meet the minimum standards of the platform's policies.
We also added a payment system that accepts payments from clients using credit/debit cards supported by CardPay.
The sharing of documents between the writers and the clients is done through Dropbox.
Backend features
We used the Postgres database in the backend of the platform. The sharing of files between users is also done through Dropbox. This feature didn't require any logic.
Testing
After building each feature, we had to test it to ensure it does the intended task.
Hosting
This platform is hosted on Bluehost servers. The domain and SSL were bought from GoDaddy.
We deployed the platform ourselves (explanation below)
Essay Bay is deployed on two servers because we anticipated high traffic, and we didn't want users to have any issues with loading speeds. Deploying the site on two servers made it possible to have a backup in case one of the servers had problems. We also had to deploy a load balancer to distribute the users between these two servers.
We proposed this solution based on our experience and expertise in deploying platforms similar to Essay Bay. The good news is this solution worked well, and the client appreciated our work.
Methodology of development
The methodology of deployment we used was Kanban.
The top features created by us
Chatting with Web Socket
We added this feature to enhance communication between writers and customers. Customers would easily get started chatting with their writers by clicking a few buttons.
Payment with a payment card
Most users worldwide love paying using credit/debit cards. So, we added this feature to make payments easier for everyone using the platform.
Availability for customer
We made all the features in this platform to be dynamic based on where someone is located. For instance, payment fees would automatically be converted in the supported currencies of the region one is located.
Stability
Everything happened without interruptions: We made sure all the backend systems of Essay Bay are stable and reliable to avoid any possibilities of crushing. That is why we had to incorporate multiple servers into this system.
Details
Timeline
2016 - 2018
Team
1 Full-Stack developer, 1 QA/QC engineer, 1 Layout designer
Used Technologies
Java
Spring
PostgreSQL
Nginx
Gradle
Web Socket
Cardpay
Dropbox
AngularJs
Hibernate
Docker