Eficode ROOT services include the following:
- Setup and onboarding
- System specification
- Tool setup, configuration and integration
- Project and team onboarding
- Data migrations, if necessary
- Continuous services, including
- Cloud toolchain cost optimisation (users, computing and storage resource usage)
- Cloud resource billing (optional)
- Software license management
- License management
- Maintenance of separately hosted tools, if any (monitoring, updates, upgrades, incident management, license management)
- On-demand support personnel availability up to 24/7/365
- On-demand support work based on the customer requests
- Value adding service components
- Agile access management with ROOT Team Management (RTM)
- Visibility across the the tools chains with ROOT Insights
For more information on the services above, please refer to the Eficode ROOT main Service Description.
Along with the managed DevOps tooling services, Eficode offers a portfolio of value added services including devops maturity assessments, hands-on automated pipeline implementation, and training. See www.eficode.com for details.
System specification service includes the following tasks:
- Current state analysis customer requirement analysis
- Tool selection
- User and access management solution design, including the required integrations (AD, Azure AD, Atlassian Access and alike)
- Definition of the roles and permission management scheme
- E.g. for developer, architect, project manager, product manager, scrum master, tester, etc.
- Tool-to-tool and networking integration requirement analysis and solution design
- E.g. for ChatOps (Microsoft Teams, Slack)
- Onboarding plan
Setup, configuration and project onboarding
System setup and configuration
Access and user management setup
- Access and user management setup according to the plan, including integrations to customer’s primary user identity management services
- Roles and permission management scheme configurations
- Ways of working definitions in collaboration with the client
Tool setup and integrations
- Tool setup and configurations
- tool workspace creation
- workflow template selections
- Integrations with systems outside the cloud native service scope
Pilot project onboarding
- Team training, if necessary
- Providing the team with access to the system based on the agreed permission schemas
- Definition an configuration of the team specific processes and ways of working
- Identity team specific custom tooling needs, for example custom CIC/D agents
- Tool-to-tool integrations (e.g. between the Atlassian stack and cloud CI/CD)
- Data migrations from the previously used tools, as necessary (see chapter 2.3)
After the first onboarding
- Fine-tuning of the policies and ways of working
- Creating reports based on the team needs
- Cost optimisations (e.g. usage of cloud tooling resources and licences)
- Performance improvements
- Project data migrations
After the initial project onboarding, Eficode will help the projects via on-demand support service, at minimum for the onboarding project duration.
Eficode will assist with data migrations from an on-premise tool to the cloud native tool instance. The migration service includes
- Source system analysis (tools, configurations, extensions/plugins, integrations)
- Target system definition
- Migration planning and execution
From on-premise tool to the cloud version
The migrations from on-prem environment to cloud are relatively straightforward in case the tool remains the same. There are, however, factors that need to be taken into account in migration planning and execution, such as
- Availability and compatibility of plugins and integrations used in the on-prem system
- Potential feature level differences between the cloud and on-prem solutions
- User access management and authentication methods
From tool to another
Migrations to a tool from another vendor require more planning and careful execution of the actual migration work. The migrations may require creation of completely new workflows and integrations, and the feature disparities may cause extensive manual setup and configuration work.
The overall complexity depends on the tool type and the source and target tool specific characteristics. Migrating from one git based version control tool to another is more straightforward than migrations between two project management solutions or CI/CD tool chains. All cases require case-by-case analysis and planning.
Cost optimisation and billing
Cloud native tool costs are typically based on a combination of
- Tool license tier (e.g. regular, pro)
- User count (number of users reserving a license seat)
- Use of computing and networking resources (cloud resource usage)
Eficode optimises the computing and networking costs with use of dynamic CI/CD agents that reserve cloud resources only during active runtime and by optimising the most costly pipelines for better cost effectiveness.
Eficode monitors the user activity and provides an opportunity to remove users that have been inactive for longer periods of time.
Additionally, we offer monthly, quarterly or yearly cloud service billing based on customer preferences.
Management of the hosted components
Even though many cloud native tool chains are getting quite complete in terms of the provided tooling scope, it is often necessary to fill gaps with additional 3rd party tools.
In these cases, Eficode offers a full range of managed services for tool selection, setup, integration, maintenance, and support.
On demand support and consultancy
Eficode on-demand support team is ready to help the customer teams with anything requests related to tools and tool usage.
We help with project onboarding, tool configurations, integrations, and finding the best tool combinations, plugins and extensions.
Eficode CI/CD experts are ready to jump in, on-demand, in case the teams require help in troubleshooting a tool or a pipeline - for example resolving issues with tool integrations, configurations, and performance.
Eficode provides versatile support for creating various types of networking solutions, VPN and network peering, layered network configurations, and jump machine configurations.
Advanced system configurations
Advanced configurations include custom build agent setup and management, custom plugins, custom integrations, pipeline configuration, and troubleshooting of complex systems.
On-demand support example RACI
This is a RACI example. Roles and responsibilities can be agreed upon case-by-case, depending on the customer preferences.
Authentication (setup and support)
Eficode takes responsibility for the setup and making sure the system works as expected.
The actual user management via Azure AD, or similar is typically a customer responsibility.
Add a new project
Customer teams create projects. Eficode support is available if needed.
Add a new integration
Sometimes adding new integration to system can cause problems to existing teams and projects
Tool data migrations
Eficode migrates the data, to guarantee most optimal, error free outcome
Eficode enforces the use of defined usage policies (e.g. for security)
Manage team level configurations
Usually the customer manages the team level configurations. Eficode provides assistance on-demand.
Manage global configurations
Eficode makes sure global tool settings are managed properly
Custom agent setup
Eficode defines the images and keeps them custom images up-to-date
In-depth CI/CD support
Eficode is available if the teams require help with their CI/CD pipelines
React to a failed CI job
Customer teams own their own builds and deployments
Tool usage reports
Eficode provides tool usage reports on-demand
System level improvements
Collaborative work to improve the system capabilities
Help available via Eficode support