StrategicIT ePMOLite DevOps

Overview

ePMOLite is a project management solution developed by Numino Labs, designed to streamline and enhance the efficiency of project management. It offers a comprehensive suite of tools to facilitate project planning, scheduling, resource allocation, and real-time collaboration. The product's core objective is to address the common challenges faced by project managers, such as fragmented workflows, inefficient tracking, and lack of integration with other essential tools.

As ePMOLite evolved and its user base expanded, the need for a robust DevOps strategy became evident. Maintaining consistent performance and ensuring seamless updates in a growing and complex environment necessitated the adoption of DevOps practices. These practices aimed to increase deployment frequency, reduce failure rates of new releases, and shorten the lead time between fixes, ultimately driving more efficient and reliable software delivery.

Problem Statement

The primary goal of setting up DevOps for ePMOLite was to enhance the software development lifecycle through automation, achieving the following objectives

  • Increase Deployment Frequency: Enable more frequent releases to meet the growing demand for new features and updates.
  • Improve Reliability: Ensure that each deployment is stable and minimize downtime through automated testing and monitoring.
  • Enhance Collaboration: Foster better communication and collaboration between development and operations teams.
  • Optimize Resource Management: Efficiently manage resources to handle scaling and peak loads without compromising performance.
  • Features

    The DevOps setup for ePMOLite incorporates several advanced features to ensure efficient development, deployment, and management of the application.

    Continuous Integration (CI)

    Continuous Delivery (CD)

    1. Automated Deployment: Deploy the application to staging and production environments automatically, reducing the risk of human error and accelerating the release process.
    2. Rollback Mechanisms: Implement automated rollback procedures to revert to previous stable versions in case of failures, ensuring minimal disruption to users.

    Comprehensive Engineering Environments

    Multiple Environments: ePMOLite operates in various engineering environments, including Development, Staging, multiple Demo instances, Production, Professional User Environment, and Enterprise User Environment. This setup ensures thorough testing and smooth transitions from development to production.

    Robust DevOps Tools Integration

    Solution

    Multi-Environment Setup

    To ensure smooth and reliable transitions from development to production, ePMOLite operates across multiple engineering environments. Each environment serves a specific purpose.

    Branching and Deployment Strategy

    The solution employs a dual-repository system:

    Infrastructure Code Automation

    ePMOLite

    Automated Provisioning

    The DevOps setup for ePMOLite was designed to automate the creation and deployment of new environments, ensuring a seamless and efficient process for onboarding new users and scaling the application.

    1. Customer inputs necessary details(first name, last name, email, password) in the sign up page.
    2. An environment will be set up for the customer through an automated process
    3. Customer receives notification of his environment deployment with credentials

    The steps for automated provisioning include

    Technology Stack

    Conclusion

    Work at Numino Labs

    See our open positions