Documentation
IT organizational unit teams

Requirement gathering and product roadmap team

  • Improve product experience
  • Add functional features
  • Get requirements from IT (internal) and non IT (external) organizational units of the organization
  • Business Analyst
    • Waterfall
    • Requirement document
  • Product Owner
    • Agile
    • Create feature issues for application engineering team
  • Product Manager
    • Agile
    • Roadmap


IT service management



Project management

  • Project Management
  • Release Management
  • Project manager
  • Release manager


Team management

  • Team lead
  • Scrum master
    • Improve developer experience
    • Add non functional features


Application Engineering ( a.k.a Development )

Responsibilities:

  • Add features to application.
  • Solve non production environment bugs.
  • unit testing

From CI/CD pipeline perspective, there are 3 types of applications:

  • Applications which are released to customers so that customers can deploy them to their own environments.
    • Examples are Windows, Ubuntu, React, Angular, JDK, Kubernetes, Apache Tomcat, Apache Maven, Selenium, Postman, OWASP Zap, etc.
    • Output of the CI/CD pipeline is a release version.
    • Released artifacts are executables, archives, installers, container images and virtual machine images for different operating systems and middlewares.
  • Applications which are deployed to production environment
    • Examples are examplebank account, transfer, loan, card, atm, currency, fees microservice application components.
    • Output of the CI/CD pipeline is deployment of application code artifacts to production environment.
    • If customers own the code, the CI pipeline will build and package the code otherwise it will take it from the artifacts released from the first type of applications.
  • SaaS Applications which are configured
    • Examples are Salesforce CRM.
    • Output of CI/CD pipeline is deployment of configuration and custom code artifacts to SaaS provider's application endpoints.
    • From the perspective of the SaaS organization, output of CI/CD pipeline is a release version, and for each customer onboarded to the SaaS application, separate instance of the application is deployed to production environment.


Application Operations

  • Solve production problems.
  • L1, L2, L3


Testing

  • Identify bugs by testing in non production environments.
  • Use acceptance criteria to write automated test scripts.
  • Create and maintain testing platform which is a set of tools to perform the testing.
  • executables, archives, installers, container images and virtual machine images for different operating systems and middlewares for testing tools like postman, jmeter, etc.
  • rollback, component, contract, integration, end to end, progressive delivery, synthetic, performance, resilience


Platform

Infrastructure

  • Hardware and software
  • Data center installation and administration
  • Work devices like desktops, laptops, smartphones, virtual desktops, installation and administration
  • Compute
    • Physical servers like mainframe, HP, etc.
    • Archives, installers, container images and virtual machine images for OS with hardening.
    • Patching
    • OS administration like Linux administration, Windows administration, etc.
  • Storage
    • Block, file and object
    • SAN, NAS, NFS, Samba
    • Backup
  • Network
    • Create and maintain Network platform which manages the network components of the organization.
    • First 5 layers of OSI Model
      • Physical Layer:
        • Cables (coaxial, twisted-pair, fiber-optic)
        • Connectors (RJ-45, BNC, SC, LC)
        • Repeaters
        • Hubs
      • Data Link Layer:
        • Frame
        • Network Interface Cards (NICs)
        • Bridges
        • Switches
      • Network Layer:
        • Packet
        • IP address
        • Routers
        • Multilayer Switches
        • Gateways
        • subnets
      • Transport Layer:
        • Segment
        • No specific devices, this layer deals with end-to-end communication protocols like TCP and UDP.
      • Session Layer:
        • Logical ports on the IP address
        • No specific devices, this layer manages the establishment, maintenance, and synchronization of communication sessions.
    • Network administration
  • Private cloud
    • VMware
  • Public cloud
    • AWS
    • Azure
    • Google Cloud
  • Infrastructure as code

Security

  • Create and maintain Security platform which is a set of tools to implement security practices.
  • Hardware and software security
  • Private cloud
  • Public cloud

DevOps

  • Build, package and deploy application changes to non production and production environments.
  • Create and maintain DevOps platform which is a set of tools to implement DevOps practices to improve speed and quality of software delivery from ideation to feedback.
  • executables, archives, installers, container images and virtual machine images for different operating systems and middlewares for DevOps tools like hashicorp terraform, apache maven, etc.
  • Public cloud infrastructure as code.

Observability

  • Create and maintain Observability platform which is a set of tools to get traces, metrics and logs from applications and other tools and generate alerts, insights and dashboards.
  • Example tool is Collector component of OpenTelemetry application of observability organizational unit.
  • executables, archives, installers, container images and virtual machine images for different operating systems and middlewares for observability tools.

FinOps

  • Create and maintain FinOps platform which is a set of tools to implement cost optimization practices.

Application Middleware

  • Language, Framework, Messaging, Runtime
  • executables, archives, installers, container images and virtual machine images for different operating systems and middlewares for middleware like apache tomcat, jdk, python, etc.
  • Middleware infrastructure like aws eks etc.
  • Application middleware administration

Database



Architecture review board



Customer account management

  • In case of applications released as products, liason between customer who has deployed the application or using it as a service and different internal teams.


Application code repositories for platform tools

  • Discovery :
    • Fill a questionnaire for each application component to collect the data. Then, use the data to make recommendations for the tools of various platforms.
    • Use GenAI to scan all the application components code repositories and make recommendations for the tools of various platforms.
  • Implementation :
    • Based on the recommendations, we need to create code repositories for these tools in the appropriate organization
    • For example, if recommended middleware tool is apache tomcat because some application components are deployed to apache tomcat as war archives, then we need to create code repository for apache_tomcat application component of apache_tomcat application of middleware organizational unit.
      • It will have release branches for each major release of apache_tomcat which has been release by apache.
      • CI/CD pipeline will get the artifacts from apache and create executables, archives, installers, container images and virtual machine images for different operating systems and middlewares.