Staff-as-Code: Apply Platform Engineering to DevOps – DZone – Uplaza

Why Apply a Platform Method to the Coding Stage?

Whereas each elements of the fashionable software program growth lifecycle, DevOps and platform engineering goal distinct challenges.

DevOps focuses on integration and steady supply (CI/CD) and groups observe metrics corresponding to code deployment frequency, lead time for modifications, change failure price, and many others.

Platform engineering goals for a broader scope: designing and managing the underlying platform that helps DevOps practices. Therefore tracked metrics are sometimes CI/CD platform uptime, useful resource utilization, instrument adoption price, course of automation stage, and many others.

Platform engineering has quickly developed from offering primary infrastructure to creating complete, self-service platforms corresponding to Inside Developer Platforms (IDP). In observe, the next domains are more and more necessary from a platform perspective:

  • Safety: When it comes to the necessity to enhance each infrastructure and code safety by embedding measures into the event lifecycle
  • Developer expertise: When it comes to the necessity to cut back complexity and allow builders to concentrate on constructing software program with out worrying in regards to the underlying infrastructure
  • Analytics: When it comes to the necessity to supply (AI-assisted) predictive and prescriptive analytics in addition to clever automation to assist builders and leaders optimize sources and anticipate potential points

Basically, platform engineering contributes to the coding stage in an oblique method in comparison with its influence on deployment, monitoring, and operations.

That is completed, for instance, by offering standardized growth environments (e.g., through container registry), CI/CD providers, self-service portals to sources and assist, documented API and SDKs, in addition to embedding safety checks in pipelines.  

On this article, I clarify how platform engineering can be utilized to defining a whole code growth undertaking, together with the builders’ laptop computer setups, wanted growth sources and functions, infrastructure and code safety insurance policies, and the organizational insurance policies associated to the staff’s onboarding, together with price range planning and different predictive governance info. This enables organizations to automate the deployment and setting of a whole growth effort.

Determine 1: Making use of Platform Engineering to the coding stage automates the setup and deployment of a whole undertaking together with staff onboarding, growth units, useful resource entry management, insurance policies and governance necessities.

This utility aligns with the three axes that I discussed above, notably: 

  • Imposing safety and organizational compliance insurance policies each from an infrastructure and code perspective earlier than any code reaches the construct pipelines
  • Personalizing the developer expertise to the extent of every growth machine that’s offered to them by the group
  • Leveraging analytics for the sake of governance and compliance to the execution of a undertaking earlier than it even begins

To allow platform engineering to handle the above considerations, one can use the capabilities of safe Cloud Growth Environments (CDE), an rising know-how that I’ve been writing about extensively in earlier articles.

The Breadth of Safe Cloud Growth Environments

The know-how of CDEs has been recognized not too long ago in Gartner’s Agile and DevOps report as an rising know-how. I’ll begin by briefly explaining the distinction between CDEs and Safe CDEs.

CDEs and Safe CDEs supply distinct approaches to managing the event course of, every with a concentrate on enhancing productiveness, safety, and governance inside software program growth initiatives. Each present a platform for software program growth that strikes historically native growth actions to the cloud with advantages defined right here.

Safe CDEs, whereas incorporating the core benefits of conventional CDEs, place a robust emphasis on safety measures to guard growth belongings. This method is integral to defending mental property and delicate information from threats corresponding to exfiltration and infiltration.

Determine 2: In distinction to CDEs (left), Safe CDEs (proper) present proxied entry to sources and functions utilizing a mixture of IDE and secured net shopping to guard the group’s information towards information leaks.


Within the context of serving a platform engineering method and automating the method of onboarding a whole growth staff, the important thing benefit of Safe CDEs over different CDEs is that they tackle a broader set of considerations, notably round developer expertise, DevOps productiveness, in addition to safety.

Additionally, I clarify on this article that Safe CDEs are offering a renewed method to DevOps core rules, particularly the rules of movement, suggestions, and steady studying. Therefore, their influence isn’t restricted to bettering platform engineering automation.

Describing the complete structure of a safe Cloud Growth platform — which delivers Safe CDEs — would take us off-topic. 

Breaking Down Entry to the Desktop Monolith

Platform engineering goals at lowering the cognitive load of builders primarily to boost productiveness and focus, sometimes by fostering standardization and simplification of instruments and processes. Key advantages embody a heightened concentrate on core duties, improved high quality and consistency, enhanced collaboration, and my favourite one: elevated innovation; i.e., by releasing mind cycles to experiment with new concepts.

Let’s have a look at an extra intention round lowering cognitive load that I didn’t embody within the above listing: quicker onboarding.

Whereas this can be a concern addressed by platform engineering, notably by standardizing growth environments, there are nonetheless quite a few set-up duties that builders and assist groups should deal with to onboard a whole undertaking staff.

This contains personalizing growth environments to their liking (surroundings information, instrument customizations, and many others.), configuring their favourite instruments, and extra. As well as, assist groups have to guarantee that all safety and compliance controls are in place. Take, for example, how threat controls utilized to inner and offshore groups are prone to differ considerably. That is the place Safe CDEs present extra granularity to allow automation with a purpose to execute a safe and compliant onboarding, ranging from organizational necessities, down to every developer’s private preferences.

In a earlier article, I defined that the usage of Safe CDEs and, in observe, of a safe Cloud Growth platform permits organizations to ship an abstraction of a safe developer laptop computer, referred hereto as a workspace for simplicity.

In impact, a workspace replaces the usage of a digital desktop with information loss prevention to handle safety considerations over mental property safety (a typical method by many organizations), whereas collectively offering extra safety and productiveness benefits delivered by Safe CDEs.

Within the determine under, I depict how the abstraction covers considerations round developer expertise, useful resource consumption, and information entry management, in addition to safety insurance policies connected to the operational features of the staff. Therefore the stakeholders to a digital incarnation of the safe developer laptop computer are, at a minimal, builders, platform engineering groups, and safety groups.

Determine 3: A workspace is an abstraction of a safe developer laptop computer that covers the wants of the stakeholders talked about within the determine, particularly builders, platform engineering groups (with considerations round useful resource utilization, instruments and information entry, and many others), and safety groups.

In distinction, accessing a secured digital desktop (consider Citrix VDI) is akin to offering a monolithic infrastructure part to builders and IT groups, the place many of the set-up that I discussed earlier than is left as a burden to particular person contributors.

Therefore, the usage of a template to configure Safe CDEs is the important thing to enabling Platform Engineering (API-based) programmatic automation to attain the complete onboarding of a growth staff. Primarily, it offers a method to implement a “team-as-code” idea.

In sum, the granularity of the template’s parameter metaphorically breaks the digital desktop monolith.

Whereas the precise parameters of the template are left to the platform’s implementation, I give an outline of the frequent considerations addressed by the implementation of our personal platform. Specifically, we offer a text-based illustration for the template in YAML such that templates may be simply edited and version-controlled.

Determine 4: The template parameters to configure Safe CDEs enable organizations to interrupt the digital desktop monolith and automate the deployment of organizationally compliant growth initiatives utilizing a “team-as-code” method.

The best way to Construct and Ship Your Staff-as-Code

Now that the principle know-how parts are in place, I’ll tackle the method automation side of implementing a team-as-code method.

Platform engineering implementations usually leverage the usage of an API with a purpose to choreograph successive operations realizing the automation. Right here this method works as nicely and the complete staff onboarding and setup course of may be laid out as follows:

  1. Create a undertaking throughout the group that hosts the staff.
  2. Onboard the completely different customers on the undertaking with their respective roles.
  3. Create a sequence of workspaces from pre-created templates that seize information entry management permissions and safety insurance policies.
  4. Assign the workspaces to particular person customers.
  5. Authenticate the person customers to the sources assigned to their workspaces.
  6. Personalize every workspace primarily based on the person consumer’s preferences.

Word that, a few of these steps are carried out collectively however laid out as above for readability. Additionally, executing such a sequence in observe utilizing any one of many large Clouds (Azure, AWS, GCP, and many others) takes beneath a minute.  

Lastly, as soon as workspaces are working customers can log in to the platform and begin coding.

Word that such an API sequence may be triggered from any Mission or ITSM instrument corresponding to Altassian’s Jira or ServiceNow. The determine under illustrates the usage of a undertaking administration instrument to create the staff setup through the API.

Determine 5: Create a team-as-code out of your undertaking administration instrument utilizing a sequence of API calls that leverage workspace templates, and coverage definitions and anticipate settings utilizing analytics.

Method’s Advantages and Alternative for Analytics

Using Safe CDEs offers granular entry to platform engineering groups in typical governance matters which can be assigned to them, for instance: instrument sprawl discount, productiveness enchancment, coverage enforcement, scalability enhance, and safety strengthening.

Whereas lots of the wants in these areas are addressed by Inside Developer Platforms (IDP), Safe CDEs enable organizations to deal with them ranging from the coding stage with granular management over developer workspaces and the insurance policies that encompass the onboarding of a staff on a specific undertaking. With out entry to a platform that manages Safe CDEs, such an early grip on undertaking setup automation is out of attain from present IDP capabilities.

Here’s a abstract of the advantages of the method to the aforementioned matters:

  • Device sprawl: Organizations can implement the usage of IDEs, with an authorised set of plugins, and the usage of an ordinary browser with authorised extensions. As well as, Safe CDEs are mechanically configured to make use of commonplace software program stacks (the underlying container definitions) and a collection of DevOps and DevSecOps instruments.
  • Productiveness: Safe CDE templates, as proven in one of many earlier figures, allow customers and groups to create complicated workspace setups. These templates are available for self-serve entry, considerably lowering the time wanted to start out or onboard a staff on a brand new undertaking in complicated, pre-configured workspaces.
  • Coverage compliance: The templates additionally enable a number of stakeholders to implement compliance guidelines utilizing a single framework supported by the platform staff. From DevOps groups to safety groups, compliance round software program stacks, dependencies, role-based entry management, and information safety are a part of the team-as-code definition.  
  • Safety: Safe CDEs enable organizations to handle safety throughout a number of sides with a unified method:
    • Safety towards information exfiltration by defining information loss prevention measures throughout the complete workflow of builders
    • Safety towards information infiltration by defending towards information that may be added to the undertaking inadvertently (credential, licensed code, and many others.) or maliciously (malware)
    • Code safety measures by establishing the surroundings such that it enforces the systematic use of code and provide chain (SBOM) safety instruments

Along with the above advantages, for my part, probably the most thrilling side of shifting code growth on-line with Safe CDEs is the chance to gather each predictive and prescriptive analytics.

A easy instance of predictive analytics is useful resource price budgeting when onboarding a staff within the scope of a time-bounded undertaking. In that case, previous workspace actions and useful resource allocation by the underlying infrastructure (e.g., Kubernetes) are leveraged to evaluate the seemingly cloud consumption by the undertaking staff through the time interval. Platform engineers can implement the predictive evaluation utilizing API calls such because the one depicted within the determine.

Determine 6: The platform API permits organizations to retrieve a trove of metrics extracted from the workspaces and the underlying infrastructure. In flip, these metrics may be remodeled into predictions and prescriptions for the undertaking operations.

One other instance of this time, prescriptive evaluation is undertaking useful resource sizing, i.e., determining the required computational sources to work on a particular undertaking. On this case, the aptitude of our platform is to embed real-time collections of measurements throughout workspace actions.

These measurements enable organizations to estimate the required sources by evaluating metrics corresponding to the common undertaking constructing time throughout the undertaking timeline and align productiveness expectations with finest practices; e.g., to reduce idle time.

Conclusion

In conclusion, Safe CDEs present a method for platform engineers to seize management of growth undertaking definitions, their related wants round sources, and organizational compliance, with a purpose to implement mechanisms to make sure productiveness and governance.

Share This Article
Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Exit mobile version