Have you built an internal developer platform in p...
# platform-leadership
b
Have you built an internal developer platform in partnership with an external engineering services company? If so, would you like to share your experience? • What was the role of the external engineering team: did they lead the project, follow your lead or consult to fill the gaps in skills and knowledge? • Platform engineering initiatives tend to have strong links to business leadership and strategy. Was the external team involved in this aspect of the initiative? If so, how did you enable them to perform this role? • What were the key factors that led you to choose the external partner? • What else did you notice about the collaboration? Feel free to add your thoughts here in a comment. I've got my own experience, but I'm keen to learn from others in this group. Thank you in advance!
v
Hi Bartek, my experience is rather on the other side - being the external services company (Red Hat Open Innovation Labs). I am more than happy to share experience if that is of interest, cautious of the fact that you are asking for the customer side of this. This video is from one such engagement by my team

https://www.youtube.com/watch?v=ow5u9Usd-gU

I should also acknowledge that the way we were approaching things from Red Hat Labs isn't a common practice (yet), especially among consulting and SI companies.
d
Having built platforms for customers a number of times in the past, I would look for a services company that specifically does bounded enablement style work. It is far too easy for organizations to become dependent on a services team and a platform is very much core to how a business operates. A couple of our most successful engagements followed patterns like this: • SME setup and complete handoff in a short duration. Team didn't have the bandwidth to come up to speed on Spinnaker and do deployment from scratch. We set it up, created pilot pipelines, documented and were don in about 12 weeks. • SME advising. In this case, the organization took advice from us at different points including the kickoff for the program and then used us throughout to provide sandboxed POCs or just advice to implementers. They owned the implementation
I know that thoughtworks does platform setup and they work from the start on pairing with people from the customer.
v
Let me bend my experience and share what I would be looking for when I am on the receiving end. • 🛑 Work themselves out of a job - as David pointed out, the services company should aim to become obsolete from the get go. ◦ Enabling Team topology (Team Topologies) is the best approach here as the interaction pattern between the Enabling team and the Stream-Aligned Team allows for a fast transition and the ownership remains at all times with the target (Stream-aligned team). ◦ Pairing for enabling - nobody from the service organization can work alone or perform black magic (something only they know how to do). Everyone on the target team should be fully enabled on the work required to design, build and evolve the platform. ◦ Enabling team is opinionated on methods, tools and practices. Make sure you agree with those as they will stick with the target team in your organization. ◦ Enabling team may fill gaps, but only if pairing is applied and one half of the pair is a person on the target team and takes over the knowledge. • 🎯 An inception period (a week or so) is required to align the Enabling team from the services company on the strategic aspects - Impact Mapping, Hoshin Kanri (or other strategy deployment approaches), OKRs, Target Outcomes - whatever method you use to gain organizational alignment and empower product teams. • 📤 Timeboxing - the enablement period must be limited to 8 weeks (no longer). Beyond 8 weeks the target team could start forming dependencies on the Enabling team, which will be anti-pattern. Having a clear time box for the enablement sets the right mindset in the target team too as they must be able to continue autonomous.
k
@Bartek Antoniak, you can check Michał Kocieniewski's speech from last Platform Engineering Meetup in Poland (it's the second one). This is a guy from LPP (large retailer), who did a Platform with my team (we were this external partner). I can also arrange the meeting with him if you like (without me of course, so you can be fully honest on the topic) 🙂 --> https://m.youtube.com/watch?utm_campaign&utm_content=Dzi%C4%99kujemy+za+spotkanie+p[…]o&utm_term=PE-after+the+webinar&v=85_lONTLjR4&feature=youtu.be
he also mentioned challenges there, which are also related to external partner's cooperation
b
Thanks for all the answers, much appreciated! It clearly shows there is a room for specialised consultancy and engineering around internal developer platforms. However, it needs to be bounded enablement style (I like the term @David Stenglein!). I fully agree the platform engineering initiative should be considered as the client's intellectual property where they own the implementation and know-how. And this requires a specific engagement model. Starting form the partial team enablement and pairing activities in one of these examples. Where I also experienced initial platform discovery is an alternative, it gives more holistic view with top-down approach. But both of them lead to working closely with engineering teams anyway. Moreover, not many organisations want to be scammed by another big consultancy/services companies with no visible way out 🙂 @Krzysztof H. let me reach out to you, I'm more than happy to connect and exchange ideas.
k
We have a dedicated Platform Engineering advisory & delivery service in BlueSoft - and we are definitely not a big4 type of guys :D we prefer to get things done over a nice theoretical presentation, doing Platforms since 2018 (yes, really - not just devops initiatives, real platforms)