Platform Engineer
2021/10/08
Apa itu platform engineering?
Bingung soal job desk dari platform engineering (PE). Sebenernya apa yang mereka kerjakan dan apa impactnya buat organisasi. Jadi ada semacam silo antara Platform Engineer dan Product Engineer.
Beberapa artikel menyebutkan kalau PE itu mengerjakan hal-hal yang inti. Seperti disebutkan di artikel Products and platforms: Is your technology operating model ready?. disana mendefinisikan tim platform sebagai:
Platform teams focus on making an organization’s core systems accessible, reusable, and modern so that they better enable products. This collaborative approach sometimes calls for platform experts to join product teams temporarily. For example, if the team working on the search product described earlier decides that users should be able to filter their searches on available inventory, then the inventory-platform team might build an API that allows product teams to query inventory data for in-stock items. A platform team will normally adjust its ways of working to match the state of the underlying systems and the needs of product teams and external partners. On most platform teams, the leader will have a technology background, and staff will mainly consist of technology specialists.
Disini PE sebagai tim platform dari core bisnis. Mereka membuat API penunjang tim product.
Tapi ada juga yang berpendapat tim platform sebagian bertugas sebagai tim yang me-enable devops culture. Artinya ada irisan antar Software Engineer dan SRE.
Yang dimaksud devops culture apa sih?
Tujuan akhir adalah:
- menumbuhkan keterampilan dan kemampuan orang
- mempromosikan tim kecil dan otonomi
- mengantarkan produk ke pasar lebih cepat
- menjadi lebih mudah beradaptasi dan fleksibel terhadap perubahan
- dan menghasilkan hasil dengan kualitas yang lebih tinggi
Apa bedanya SRE dan Platform Engineering
Platform engineering teams apply software engineering principles to accelerate software delivery. Platform engineers ensure application development teams are productive in all aspects of the software delivery lifecycle.
Site reliability engineering teams apply software engineering principles to improve reliability. Site reliability engineers minimize the frequency and impact of failures that can impact the overall reliability of a cloud application.
Objektif
- Provide greater clarity to stakeholders to assist with prioritisation of work tasks
- Continuously improve site reliability practices — any change we make should focus on how we can help with that process
- Arrange on-going care and attention for our Legacy systems. They’re not as fun to deal with due to their outdated technology stacks, but they are critical to our business and need to be treated as first-class citizens
- Establish ownership of shared tooling and systems for technology teams
- Automating deployment processes.
- Standardizing Kubernetes Deployments.
- Abstracting shared requirements like audit, logging, and security.
- Writing documentation for developers.
- Platform uptime.
- Application deployment velocity (Time it takes an application to progress from development, to production).
- Number of initial configuration changes to the deployment bundle.
- Survey’s of application teams.
Pertanyaan yang harus ditanyakan?
- Apa sih yang membuat tim menjadi lebih produktif dalam software delivery lifecycle ?
- Workflow seperti apa yang dapat mempercepat proses coding dan shop software?
- Cepat itu seberapa? 1 menit, 1 hari ?
- Salah satu tugas PE adalah edukasi. Apa saja dan seberapa sering?
- Bagaimana PE team bisa kolaborasi secara produktif dengan tim lain?