Temporal PHP SDK for Microservice Platform
-
Custom Software Development
- $10,000 to $49,999
- Aug. 2020 - Mar. 2021
- Quality
- 5.0
- Schedule
- 5.0
- Cost
- 2.5
- Willing to Refer
- 5.0
"They took an incredibly broad task and delivered a high-quality result with zero experience in our domain."
- Other industries
- Seattle, Washington
- 11-50 Employees
- Online Review
- Verified
Spiral Scout was tasked with creating new language SDKs for an open-source microservice platform. Their end goal was to expand its market into different countries via PHP and niche technologies such as Golang.
Spiral Scout has proven itself to be highly motivated and competitive with their work. The client commended their ability to complete complex tasks in a highly effective and well-organized manner. The teams also communicated well on GitHub, Slack, and other project management platforms.
The client submitted this review online.
BACKGROUND
Please describe your company and your position there.
We are Temporal, the open source microservices orchestration platform for running mission critical code at any scale. We provide a service which enables developers to build highly reliable applications in the language of their choice. I serve as Head of Product but am currently responsible for Sales, Marketing, Devrel and a few other functions.
OPPORTUNITY / CHALLENGE
For what projects/services did your company hire Spiral Scout, and what were your goals?
The core of Temporal is our backend, which is agnostic to the language developers write workflows in.
To actually use Temporal, developers write applications using clientside libraries we provide in a few popular languages. As a project and a company, our ability to attract developers is directly limited by the number of languages we support. Adding support for a new language is not a trivial exercise.
For one, we strive to make sure each language experience reflects the methodology and best practices for that language. This means that the anyone writing a new language SDK for Temporal really needs to understand the language inside and out. Regardless of the language, implementing a Temporal SDK requires deep understanding of distributed systems, race conditions and Temporal itself.
Until last August all SDK's were created and maintained exclusively by the Temporal team. We knew that our language support was not growing at the rate we hoped. When Spiral Scout approached us last August and offered to build a PHP SDK for Temporal, we were very interested.
Once we felt that they had the right set of skills to tackle the job, we engaged with them officially and started working together closely.
SOLUTION
How did you select Spiral Scout and what were the deciding factors?
The effort and competency required to build a new language SDK for Temporal is so high that we completely assumed it would always fall on us. When Spiral Scout approached us and showed serious interest in doing the work, we were very excited and interested.
Although the work is very complex, it makes it quite easy to validate if someone is capable of doing it at all. After a number of sessions with Spiral Scout it was clear that they had very strong engineers who could dive deep into system details.
A major concern was that even a skilled team would require so much hand holding such that it would invalidate the value they added in the first place. It became immediately clear that this was not an issue with Spiral Scout.
As a group they are incredibly driven and self motivated, almost always able to find solutions to the problems they encounter. They're also great about knowing when to not waste time and just ask for help. It's a hard balance to strike.
Describe the scope of work in detail, including the project steps, key deliverables, and technologies used.
The key deliverable was a full fledged PHP SDK for Temporal. On top of the usual complexity that comes with a new language SDK, this project also had additional complexity. Instead of implementing things from scratch, there were limitations that required it to be implemented on the base of our existing Golang SDK. This meant that Spiral Scout's team not only needed to be proficient with PHP but also Golang. Once we agreed on high level details, the process was very iterative. Spiral Scout was great about constantly giving us updates about the current status and raising issues sooner rather than later. They happily adopted our processes such as GitHub, Slack etc. Overall the engagement was very consistent. There were never points where we felt worried or disconnected, it was a constant stream of information.
How many people from the vendor's team worked with you, and what were their positions?
Quite a few developers on the SpiralScout team who were involved with the project. Our main point of contact was Anton, who did an outstanding job on all fronts. He was expected to both understand the incredibly complex technical requirements but also the high level deliverables and business value. Anton is an exceptional communicator, technologist and strategic thinker. I would feel comfortable essentially having him and the team work on any technical challenge.
RESULTS & FEEDBACK
Can you share any measurable outcomes of the project or general feedback about the deliverables?
The major outcome was a fully functional PHP SDK for Temporal. This task has been 100% delivered on with no exceptions. Overall its very hard to fault any of the work Spiral Scout did. Even nice to haves such as documentation were handled without us asking. The quality of work across the board is consistently high.
Describe their project management style, including communication tools and timelines.
Project management style was seemingly very well planned and detail oriented. In general it's hard to design a working Temporal SDK without thinking ahead quite a bit. As I previously mentioned, Anton is an awesome communicator and we were constantly updated about any critical changes or concerns.
They used a combination of internal project tracking tool and the GitHub repo to stay on top of issues and requests. Timelines were in general very transparent although the project did go over projected by a bit.
SpiralScout never asked us to pay for the overage although we did because the work was outstanding. In the end, scoping a Temporal SDK is incredibly difficult even for us so I find it very difficult to fault Spiral Scout for the outcome. We value reliability far more than velocity, and I felt SpiralScout does too.
They probably could have delivered on the original timeline but with something less premium. I'm happy they didn't do that.
What did you find most impressive or unique about this company?
They took an incredibly broad task and delivered a high-quality result with zero experience in our domain. Not only did they overcome an immense technical challenge but also married it to their specific area of expertise (PHP) in a way we could never have done. I would also say the communication and transparency stood out.
Are there any areas for improvement or something they could have done differently?
In all honesty there is not much I can think of. I have no complaints.
RATINGS
-
Quality
5.0Service & Deliverables
"Incredible attention to detail. Had huge amounts of trust in the team."
-
Schedule
5.0On time / deadlines
"They make themselves available incredibly fast. Sometimes it feels like they must have been waiting just for your message."
-
Cost
2.5Value / within estimates
"Very affordable even after the timeline was extended. In all honesty the price was dirt cheap considering the task."
-
Willing to Refer
5.0NPS
"I would happily recommend them to my friends.