Health
PlatformDomainAcademyDesign SystemFeedback
v1.4
v1.4
  • 👋Introducing DIGIT Health
    • Release Notes
      • HCM v1.4 Release Notes
        • Migration from v1.3 to v1.4
        • Service Build Updates
        • Release Checklist
      • v1.3 Release Notes
      • v1.3 Tech Release Summary
        • Master Data Management Service (MDMS) & Configuration Updates
        • Test Cases
        • Service Build Updates
      • v1.2 Release Notes
      • v1.0 Release Notes
  • Product Roadmap
  • 💙HEALTH CAMPAIGN MANAGEMENT
    • Understanding DIGIT Health Campaign Management (HCM)
    • Value Proposition
  • 🎯HCM PRODUCT SUITE
    • Functional Specifications
      • Campaign Type Setup
      • Campaign Setup
      • Inventory
      • Boundary Hierarchy
      • Beneficiary
      • Boundary Data Specs
      • Draft System User Setup
      • Role Action Mapping
    • Building Blocks & Services
    • HCM Modules
      • DIGIT HCM App
        • User Manual
          • Single Round Campaigns
            • Registration & Delivery
          • Multi-Round Campaigns
            • Registration & Delivery
            • Download Beneficiary Data
          • Common Functions
            • User Management
            • 2D Voucher Scanning
            • Proximity-Based Search
            • Voucher-Based Registration and Distribution
            • Tracking Beneficiary Referrals
            • Tracking Side-Effects for Beneficiaries
            • Tracking Adverse Events
            • Health Facility Referral
            • Raising Complaints
            • Resolving Complaints
            • Inventory Management
              • User Manual
                • Stock Management
                • Stock Reconciliation
                • View Reports
                • Bale Scanning
            • Attendance Management
          • Support Functions
            • Language Selection
            • Login
            • Forgot Password
            • Project Selection
            • Hamburger Menu
            • Help
            • Sync
            • Checklist
      • Campaign Management Dashboard
        • User Manual
      • Microplanning
      • HCM Console
  • 🚀REFERENCE IMPLEMENTATIONs
    • Mozambique
      • LLIN Overview
      • Customisation
      • Rollout
  • 🧰TECHNOLOGY
    • Architecture
      • High Level Design
        • Health Campaign System High Level Design
        • Design Decision Log
      • Low Level Design
        • Registries
          • Individual
          • Household
          • Product
          • Facility
          • Attendance
        • Services
          • Project
          • Stock
          • Referral
      • Field App Architecture
        • UI Packages
          • Registration & Delivery Package
          • Referral Reconciliation Package
          • Inventory Management Package
          • Attendance Management Package
          • DIGIT Scanner Package
          • Digit Showcase Package
          • Digit Data Model Package
    • Standards
    • Security
    • Interoperability
  • 🪝SETUP
    • Planning an HCM Implementation
    • Establish Project & Team
    • Gathering Requirements
    • Installation
      • Install Using GitHub Actions in AWS
      • System Data Setup
      • Project Data Setup
      • Setup Mobile App
      • Setup Kibana Dashboard
        • Create or Edit Existing Dashboards
      • Server Cleanup
    • Configuration
      • Configuring HCM to Campaign and Country Needs
      • Service Configuration
        • Individual Registry
        • Household Registry
        • Product Registry
        • Facility Registry
        • Stock & Inventory
        • Project Services
        • Referral Management
        • Attendance
        • Complaints
          • QA Sign-Off
            • Test Cases
        • User Management
          • QA Sign-Off
      • UI Configuration
        • Stock Management
        • Language Selection
        • Login
        • Forgot Password
        • Project Selection
        • Dashboard Configuration
          • Dashboard UI Enhancements
          • HCM Dashboard Master Promotion Guide
        • Attendance Management
          • Attendance Package Extraction and Interaction with HCM Application
    • Quality Assurance Testing
      • Regression Test cases
  • 🔵COMMUNITY
    • Source Code
    • Committee
      • Digital Product Advisory Committee Charter
      • Idea Management Process
      • Sessions
        • November 2023 session
        • August 2024 session
          • Minutes of the Meeting
Powered by GitBook

https://creativecommons.org/licenses/by/4.0/

On this page
  • Introduction
  • Technical Skillset
  • Development Team Skillset
  • DevOps Team Skillset
  • Hardware Pre-requisites
  • Software Assets

Was this helpful?

Export as PDF
  1. SETUP

Gathering Requirements

Technical Skillset & Pre-requisites

Introduction

This document lists the technical skillsets required for someone to build and support the Health Campaign Management (HCM). There are distinct skills required to customise the application, and set up and run the infrastructure for this. The basic hardware configuration required for the developer machine is part of this document.

Technical Skillset

The technical skillsets that are required to work on the DIGIT HCM stack are listed below. It is expected the team has satisfactory knowledge of the below technologies before they take up DIGIT training.

Development Team Skillset

  • Open API Contract - Swagger2.0

  • YAML/JSON

  • Postman

  • Postgres

  • Java and REST APIS

  • Basics of Elasticsearch

  • Maven

  • Springboot

  • Kafka

  • Zuul

  • ReactJS

  • Flutter

DevOps Team Skillset

  • Understanding of the micro-service architecture.

  • Experience with AWS, Azure, GCP, and NIC Cloud.

  • Strong working knowledge of Linux, command, VM Instances, networking and storage.

  • To create Kubernetes cluster on AWS, Azure, and GCP on NIC Cloud.

  • Kubectl installation and commands (Apply, get, edit, describe k8s objects).

  • Terraform for infra-as-code for cluster or VM provisioning.

  • Understanding of VM types, Linux OS types, LoadBalancer, VPC, Subnets, Security Groups, Firewall, Routing, DNS)

  • Experience setting up CI like Jenkins and creating pipelines.

  • Deployment strategies - Rolling updates, Canary, Blue/Green.

  • Artifactory - Nexus, Verdaccio, DockerHub, etc.

  • Experience with Kubernetes ingress, setting up SSL certificates and renewal.

  • Understanding of the Zuul gateway.

  • Gitops, Git branching, PR review process. Rules, Hooks, etc.

  • Experience in Helm, packaging and deploying.

  • Apache, Nginx, Redis and Postgres.

Hardware Pre-requisites

Teams are expected to have laptops/desktops configured as mentioned below with all the software required to run the DIGIT application:

  • Laptop for hands-on training with 16GB RAM and OS preferably Ubuntu

  • All developers need to have Git IDs

  • Install VSCode/IntelliJ/Eclipse

  • Postman

Software Assets

There are knowledge assets available on the net for general items and eGov assets for DIGIT services. Here you can find references to each of the topics of importance. It is mandated the trainees do a self-study of all the software mentioned in the pre-requisites using the reference materials shared.

Topic
Reference
Preparedness Check

Git

Do you have a Git account? Do you know how to clone a repository, pull updates, push updates? Do you know how to give a pull request and merge the pull request?

Microservice Architecture

Do you know when to create a new service?How to access other services?

ReactJS

How to create react app?How to create a stateful and stateless component? How to use HOC as a wrapper?Validations at form level using React.js and Redux.

Postgres

How to create a database and set up privileges? How to add an index on a table? How to use aggregation functions in psql?

Postman

Call a REST API from Postman with proper payload and show the responseSetup any service locally (MDMS or user service has least dependencies) and check the API’s using postman.

REST APIs

What are the principles to be followed when making a REST API? When to use POST and GET? How to define the request and response parameters?

Kafka

How to push messages on Kafka topic? How does the consumer group work? What are partitions?

Docker and Kubernetes

How to edit deployment configuration? How to read logs? How to go inside a Kubernetes pod?How to create a docker file using a base image?How to port-forward the pod to the local port?

JSON

How to write filters to extract specific data using jsonPaths?

YAML

How to read an API contract using swagger?

Zuul

What does Zuul do?

Maven

What is POM?What is the purpose of maven clean install and how to do it?What is the difference between the version and SNAPSHOT?

Springboot

How does autowiring work in spring? How to write a consumer/producer using spring Kafka? How to make an API call to another service using restTemplate? How to execute queries using JDBC Template?

Elastic search

How to write the basic queries to fetch data from the elastic search index?

DIGIT Architecture

What comes as part of the core service, business service and municipal service? How to calls APIs from one service in another service?

DIGIT Core Services

Which are the core services in the DIGIT framework?

DIGIT DevOps

​

DIGIT MDMS

How to read a master date from MDMS? How to add new data in an existing Master? Where is the MDMS data stored?

DIGIT UI Framework

How to add a new component to the framework? How to use an existing component?

DSS

​

PreviousEstablish Project & TeamNextInstallation

Last updated 1 year ago

Was this helpful?

Install ​

Install ​

Install ​

Install 6

Install ​

​​​​​​​​

​​​​​

​​​​​​​​

​​​​​​​​

​​​​​

​​​​​

​​​​​​​

​​​​​​​​

​ ​

​​

​s

​​​​​

​​​​​

​​​​​

​​​​​

​​

​​​​​

​​

​​

​​

🪝
Git
JDK 8 update 112 or higher
maven v3.2.x
PostgreSQL v9.
Elastic Search v2.4.x
https://www.atlassian.com/git
https://www.tutorialspoint.com/git/index.htm
https://www.udemy.com/course/git-complete/
https://www.tutorialspoint.com/microservice_architecture/index.htm
https://www.udemy.com/course/microservices-with-spring-boot-and-spring-cloud/
https://reactjs.org/tutorial/tutorial.html
https://www.udemy.com/course/react-the-complete-guide-incl-redux
https://www.tutorialspoint.com/reactjs/reactjs_overview.htm
https://www.postgresqltutorial.com/
https://www.udemy.com/course/the-complete-python-postgresql-developer-course/
https://www.tutorialspoint.com/postgresql/index.htm
https://www.postman.com/resources/videos-tutorials/
https://www.udemy.com/course/postman-the-complete-guide/
https://www.tutorialspoint.com/rest_api/index.asp
https://www.youtube.com/watch?v=rtWH70_MMHM
https://www.udemy.com/course/apache-kafka/
https://kafka.apache.org/intro
https://www.tutorialspoint.com/apache_kafka/apache_kafka_introduction.htm
https://www.tutorialspoint.com/kubernetes/index.htm
https://www.udemy.com/course/docker-and-kubernetes-the-complete-guide/
https://www.tutorialspoint.com/docker/index.htm
https://www.tutorialspoint.com/json/index.htm
json-path/JsonPath
https://www.udemy.com/course/yaml-essentials/
https://www.javatpoint.com/zuul-api-gateway
https://www.udemy.com/course/maven-quick-start/
https://www.tutorialspoint.com/maven/index.htm
https://www.tutorialspoint.com/spring_boot/index.htm
https://www.udemy.com/course/spring-hibernate-tutorial/
https://www.udemy.com/course/elasticsearch-complete-guide/
https://www.tutorialspoint.com/elasticsearch/index.htm
Orientation - Platform Overview
DIGIT Architecture and Technical overview
Product requirements
DevOps Partners - KT Content
DIGIT Deployment
MDMS Configuration
Getting started
Product - DSS