I have set up engineering teams many times in my career. Each time is unique, and it is fascinating to observe a new team building its own micro culture and character.
Cloud Application Management (CAM) is a brand new platform engineering team that provides services to manage platform extension applications.
A customer or the application author decides:
- which configurations need to be changed for their solution
- what data sources are required
- what processing is required for the new data
- whether to list the application in application registry or keep it private
An administrator installs, upgrades or removes an application on their cloud solution. Typical on premise customers are able to perform these operations by uploading and unzipping application bundles to software nodes.
In cloud, there is no direct access allowed to machines, as they are managed by internal personnel.
The main job for the team is then to enable customer administrators to reliably install, upgrade and remove applications from their own cloud solutions.
This is a much harder job than it appears:
- Number of software execution machines grow and shrink over time, as their business changes reflects in either usage and or data volume changes.
- Applications change global state of the node, and can interfere at run time with each other as well.
- Applications can be further customized locally on node(s), with settings like authorization strings, and user specific settings like dashboard visualizations or data queries.
CAM team has 11 engineers including the manager. A product manager and an architect help further solidify the teams charter, mission, technology and architecture. There are two principal engineers, four senior engineers, and four career engineers. A lot of toil for the team is spent on partnering with technical operations teams and ensuring that existing customer solutions remain healthy.
The team works backwards from cloud customers, and their services are consumed by other engineering teams as admin user experience teams, admin api teams, and technical operations teams.
The team has slowly adjusted to its new ownership, and coming to understand and communicate the problem boundary better. The team is hungry and ambitious, and in a hurry to make an impact.
A key outcome for 2023 is to have full CI/ CD, multi-tenant, application management api available for customers and internal stakeholder teams. This provides agility of changes, and decouples functionality from the search engine.