Project Description
The Client
World’s leading provider of data, insights and connections to professionals and organizations. Empowering them to compete and win through expert insights and relevant employment connections.
Employers and recruiters use customer’s websites and services to source and hire the most qualified professionals in select and highly-skilled occupations, while professionals use our websites and services to find the best employment opportunities suitable to their career aspirations
The Project
The solution for employers is a SaaS talent sourcing management and engagement tool, designed to help HR organizations easily create and manage talent pipelines and engage candidate leads in the pre-apply phase.
The Challenge
The solution was part of Client’s acquisition strategy. Though solution was meeting the current need of industry but had inherent limitations ranging from poor quality code, tightly coupled architecture and no documentation.
To enable this solution to meet Client’s future growth strategy, Client was looking to enhance the platform to be
- Highly scalable and Highly available
- Available across multiple channels
- Interface with 3rd party applications
- Loosely coupled functionalities to enhance availability and reuse across various platforms
The Solution
Partnered with customer to redesign and re-architect this monolith and internally tightly coupled application into a modern loosely-coupled enterprise application using Microservices and Cloud based solution
Technology Solution: A loosely coupled micro-services and REST APIs based SaaS solution. All micro services will run inside their own docker containers and these docker containers are deployed on Amazon Web Services which provides a low cost way to quickly build, ship and run distributed applications at scale
Technology Stack
Programming Language
Python & flask framework for creating Microservices
Cloud Infrastructure
Amazon EC2, Cloudsearch, MySQL on amazon RDS, Elasticache, SES & S3
Microservices and API
To meet the need of various use cases like a mobile app, its browser extensions, push notifications, social network integration , developed APIs for micro services. APIs are residing on their respective services
Tools and Technologies
Celery to execute background tasks
Pytest framework for unit testing
GitHub for Source code repository
CircleCI for Continuous integration
Jira as an Issue tracking system