Get your work done
HotShot is a freelance platform where contractors are able to find a necessary specialist to perform work according to their requests. Speaking shortly it’s an Upwork clone that contains functionality like: online chat between specialists and contractors, applying for a job, receiving costs for a performed job, contracts management menu, search for a job functionality, job posting, etc. The platform connects contractors and specialists to help them find each other, extract value from cooperation and make the job done.
To make a new product that is compared with something big that has been successfully launched sounds like a challenge. In our case, we were approached with the same task. The core project direction sounded like "we need to create a platform to cover business needs to earn millions then".
What we did
What we did
It has been conducted an initial prescreening set of requirements elicitation with key modules description. We always do it to define project boundaries to surf inside of them and build functionality combined with business requirements. Nowadays it's the integral approach to perform projects within clients' expectations and be project-focused since the beginning.
When the overall boundaries were defined we started to form mockups in Figma. It's our approach when we visualize functionality that is going to be done and it helps to build basic flows and business logic. So essentially we create a visual fundament we design step by step a future functionality on. At this stage, no code is created, because a client's vision or idea and functionality interpretation may change...Keeping that in mind we can easily change our Figma layouts and discuss a new conception of the idea. Thus we play with functional and usability stuff.
Following our custom approach, we were designing the functionality step by step talking to the client and making notes and changes. What else we did was linking layouts between themselves to see how this everything works and model a user behavior according to the functional modules.
Having made all mockups with linking we tested flows according to the functionality description we had received from the client previously. Then using the mockups we created a scope of work based on user stories and use cases format. The client approved the description of the functionality using an incremental approach. And we started to do UX/UI design.
On the design stage there were made changes according to UX patterns and the structure of the pages was changed a bit but approved functionality stayed the same.
At the end of the design stage, we started to investigate such non-functional requirements like promotion aspects, deployment, technologies, etc. And figured out that the platform was going to be promoted by SEO. It meant the platform had to be fit for indexing by google bots.
We finalized the design and started to discuss a tech stack. The platform was going to be big and complex and we had to be in line with terms and budget. In these cases, we always choose the Laravel framework for the backend part. It helps us to build a quality product and incarnate almost all of clients' wishes.
According to the requirements about high load and speed performance we chose React.JS for the frontend part with Next.JS for performing SSR functionality, because SEO requirements were prioritized. The stack was approved and we started to code the platform.
Our backend engineers created a database architecture, tested it and we started to allocate additional specialists for the project. Set up Jira with all the tasks from the scope of work and started to code the functionality each week delivering results to the client.
Our system of CI/CD was configured according to the team composition and the development plan that allowed us to spend time only to code and discuss key aspects of the project, all the code was transferred into necessary places quickly and smoothly.
The team consisted of front/backend team leads and engineers, engineers, QA specialist, and a project manager.
So, eventually, everything's been done perfectly and we released the platform. The team and the client were very happy and proud of the work done. Thus we received a new review on our clutch profile.
“We are thrilled to have been chosen as one of the leading software development providers in Ukraine!” – Andriy Petrenko, CEO
The article contains information about a discovery phase conduction. It includes general points and also decomposing for stages.