Platform Software Engineering Practice
Jump to navigation
Jump to search
A Platform Software Engineering Practice is a software engineering practice that enhances software developer productivity and software workflow efficiency by focusing on software engineering platforms (such as internal developer platforms and automated software development processes).
- Context:
- It can (often) be Iteratively Developed.
- It can adopt a Customer-Centric Approach.
- It can encompass various functions such as Developer Tooling, System Enablement, Frontend Development, Backend Development, Infrastructure Management, Software System Reliability, Software System Security, and Data Management.
- It can aim at Cognitive Load reduction.
- ...
- Example(s):
- An organization developing an MVP Software Engineering Platform focusing on essential features like documentation or discoverability.
- An organization developing an internal portal to streamline deployment processes.
- An organization creating a self-service platform for developers to access tools, environments, and resources.
- ...
- Counter-Example(s):
- A Standalone Software Development Tool that operates independently without integration into a broader platform.
- A Traditional Software Development Process that relies heavily on manual coordination and resource allocation.
- See: Developer Experience (DX) Design, Software Development Lifecycle (SDLC) Management, AI-Assisted Coding Tool.
References
2024
- https://thenewstack.io/developer-productivity-in-2024-new-metrics-more-genai/
- NOTE: Platform engineering is a sociotechnical discipline that focuses on improving the work life of internal developers by creating robust platforms and teams dedicated to developer enablement. It involves building internal developer platforms and portals that offer a strong foundation for development teams within an organization to build upon reliably and securely. Unlike earlier top-down platform approaches, modern platform engineering adopts a customer-centric mindset, treating internal developers as customers and focusing on their needs and productivity. It covers various functions like developer tooling, enablement, frontend and backend platforms, infrastructure, reliability, security, and data management.
- QUOTE: "Like its name suggests, platform engineering is the scaffolding — usually in the form of an internal developer platform, plus team — that offers a strong enough base that the majority of development teams within an organization can reliably and securely build on top of it."