Cloud communications service Twilio believes software development doesn't have to play out like Groundhog Day, a film in which a man relives the same day over and over. For developers, that sense of déjà vu is a common experience.
In an interview with The Register on Tuesday, Pat Malatack, VP and general manager of messaging at Twilio, said one of the common patterns among developers is that everyone builds the same thing.
"Every developer doesn't need to reinvent the wheel," noted Malatack.
Presently many do. Whether it's building messaging apps or adding telephony support, computer programmers implement many of the same core functions when creating communications services.
Twilio, Malatack said, set out to model these common functions as application programming interfaces (APIs) and make them available to corporate customers.
The result, introduced at the company's Signal '17 conference on Wednesday, is the Twilio Engagement Cloud, a set of APIs tied to business logic to make development more like assembling prefab components than artisanal code crafted line by line.
CEO Jeff Lawson in his keynote address revisited a favorite theme – that coding is creative – and highlighted some success milestones. Internal code deployments at Twilio have increased almost 10x in the course of a year, thanks to the company's embrace of continuous deployment, Lawson said. Service availability and request success rates have each been in excess of 99.999 per cent, he said.
More than 1.6 million developers have Twilio accounts, according to Lawson.
The new service in the Engagement Cloud portfolio is Twilio Proxy, which allows companies to route a call from a customer to an employee or contractor who is on the move – delivering goods or heading to meet a customer in person.
Uber has a call system of this sort to mediate contact between riders and drivers. And other companies participating in the so-called on-demand economy have built similar functionality.
At Signal, Lawson recounted his experience with Rinse, a service that picks up clothes for dry cleaning and drops them off, using text messaging to coordinate with customers.
In the past, implementing a communications system capable of handling proxied call routing at scale presented a significant development challenge. Twilio Proxy can do so with a few lines of code, managing real-time provisioning of phone numbers, routing of calls and texts, content moderation, time-bounded call management, and message logging.
Setting the service up involves three steps:
1. Create a session:
curl -XPOST -d "UniqueName=MyFirstSession" \ -u 'your_account_sid:your_auth_token'
2. Add participants:
curl -XPOST -d "Identifier=+123482329348" \ // or FacebookID or email address etc -u 'your_account_sid:your_auth_token'
3. Send a message:
curl -XPOST -d "Body=Hey, reply to this message to chat!" \ -u 'your_account_sid:your_auth_token'
Twilio Notify, announced last year, has been rolled into the Engagement Cloud service. It coordinates automated notifications across different messaging channels like SMS, Slack, email, and the like.
Twilio TaskRouter, software for helping contact centers work more efficiently, is also now part of the Engagement Cloud. Launched in 2015, it allows call center agents to declare skills so that customers can be connected with the person most likely to solve their issue.
The same goes for Twilio's Authy service, which makes implementing two-factor authentication security a bit easier.
There's a new speech recognition service, Twilio Speech Recognition, built in partnership with Google, and a natural language understanding service called Twilio Understand.
In addition, Twilio debuted a set of partner integrations, under the banner Twilio Channels, that will let companies utilize a single messaging API to address customers through multiple different platforms. These include: BlackBerry Messenger, Facebook Messenger, KIK, Line, Viber, WeChat, Atlassian's HipChat, Slack, SendGrid, and Twitter.
Lawson said, "Every company is becoming a software company," noting that Nike employs more software developers than shoe designers and Goldman Sachs employs more software developers than Facebook. That turns out to be a convenient viewpoint for Twilio, which addresses the needs of software-focused companies. But not every company is a Twilio customer.
Twilio's bid to broaden its appeal by reducing the amount of code assembly required should serve it well among small- to medium-sized businesses. It's less clear whether convenience is enough to entice more enterprise customers, which tends to require special handling.
On a conference call with investors earlier this month, Lawson said Uber, which accounted for 12 per cent of the company's revenues in the first quarter of 2017, was planning to reduce its use of Twilio's platform. In some regions, he suggested, Uber will use other communications platforms, and may implement related communication services – possibly something like a vendor price arbitrage layer – internally.
Coincidentally, Chris Lambert, CTO of Lyft, Uber's main rival in the US, appeared on stage at Signal to talk about how his company built its own call proxy system.
This scenario, in which a company chooses to diversify its vendor dependencies or replicate a service in-house, may be more of an outlier than the norm, however. Uber and Lyft, as technology companies with significant engineering talent, are more capable than most large organizations of freeing themselves from platform lock-in. Less technically oriented firms may not want to bother.
But Twilio will probably need to build its sales and support organizations to entice more large organizations to consider its communications platform. As Lawson put it, "We have good momentum [among large companies] and we will continue adding further resources to our enterprise go-to-market efforts." ®