Proofread My Essay wanted to integrate a “Pay upon invoice” option for businesses and organizations so that they can submit bulk work and documents for proofreading. BiztechCS developed the company’s website cum web application with custom modules, payment gateway, and other integrations. Since they’ve been our customer for a long time now, we’ve had the opportunity to work on several points including:
- SEO Friendly Website
- CMS implementation for CakePHP
- Powerful Shopping Cart Integration
- Slack Integration
- Wallet Credits
- Xero Integration with Backend
- Personalized Coupons and Credits
- Handling Multiple Domains:
And many more.
The client wanted to change the format of the document from .doc to .docx which was not possible due to unexpected errors from Cloudflare services. Since this was something that could add positively to their customers’ experience, we found a way through this issue. To make the conversion, we decided to run processes like CLI (command line interface) in the background. Simultaneously, we also had to show these processes to the user in frontend. This task was a tad tricky since the processes run in its own particular thread.
Since we were processing requests in the backend, it became easier for the user to add new documents, services, navigate the website, and many such tasks. This also reduced Cloudflare timeout errors. Up to that, Xero Integration with the backend helped in tracking and managing orders and payments.
Enhancing customer experience:
There were multiple flows and API integrations that were causing some issues on the website making it difficult for users to use their services. To solve this problem, we decided to log data from websites for high-level processes like document upload and email alerts on critical processes like duplicate payment.
This made it easy for the client to identify any issue as they can just go through the log. This also made it easy to know the specific flow, resolve the issue, and know the exact data inputs which we get from the logs. Additionally, logs take up disk space on the server so it was essential for us to decide which data is important and whose logs we should be keeping.
Logging and monitoring critical process
The website was using multiple processes, third party APIs, etc. which were making it difficult to understand how many services the website depended on. We decided to log the data of the third-party libraries, multiple APIs, etc. so it becomes easy to find issues, understand and then solve them. Documenting everything from the scratch was important for us as we needed to understand which flow depended on which API library.
Managing website content
The client wanted a responsive and mobile-friendly website design to outreach a wider range of customers. So we conceptualized and developed a CMS architecture in CakePHP for the easy and professional management, addition, and modification of website content. Along with it, we integrated WordPress Blog for easy management of blogs.
Instant document notifications
Along with document logging, the client wanted to stay updated with the new tasks and documents uploaded. Thus, we integrated slack so that the proofreaders can get notifications for documents that are in the queue, status changes in the documents, and for any new document that is uploaded by them.
Multiple document formats and their price calculation
The client wanted to support more than 10 file formats including PDF, LaTex, MS Powerpoint, Google Docs, Plain Text, etc. The complicated part was to get the word count for each format and calculate price per word and per page for each file format. Additionally, it also required proper integration with different APIs like Google Drive, Google OCR, Cloud Converter, and many more.
Other updates during our recent sprint:
- Updating payment modules
- Long-running processes
- Resolving slack issues