As Telstra continues its shift from just being a telecommunications carrier to what it likes to describe as “a world class technology company that empowers people to connect”, the company’s software teams have been given a mandate to take an API-first approach to development whenever possible.
As with many other tech-heavy enterprises, there’s significant body of thought within Telstra that sees application programming interfaces — APIs — not just as software tools but also as business tools that in addition to driving efficiencies in internal software development efforts can also open new opportunities for co-creation and collaboration with partners and even create new revenue opportunities.
The telco’s strategy encompasses three broad categories of APIs, each of which targets a different audience: Private, internal APIs accessible exclusively to Telstra’s developers; external, public APIs, that are available for use by third-party developers; and APIs intended for use by Telstra’s partners.
“Each one of these has a different value to Telstra,” said Telstra developer evangelist Frank Arrigo. “The internal ones, the private ones, it’s all about, over time, saving money through driving reuse and reducing duplication and redundancy.”
“The public ones, it’s all about helping drive innovation with our customers,” he said. “Really the value [to Telstra] there is to put services out there that help others create value for themselves. We see ourselves as part of that value chain, helping the developers who are creating a service and an application around it.”
The third category of APIs help Telstra strengthen its relationship with its partners as well as open up new revenue opportunities, he said.
A noteworthy difference between the API strategy at Telstra compared to some other enterprises is the way the launch of public APIs has been leveraged to help bolster internal API-enablement efforts, Arrigo said.
Telstra launched its first public API — the Telstra SMS API, which allows developers to send and receive text messages over the Telstra mobile network — in early 2015. Its launch built on a significant amount of work to flesh out the telco’s API strategy, with Arrigo joining the company in 2014 from Microsoft.
(Arrigo is part of the Telstra Software Group. He describes it as not part of IT but “adjacent” to IT, sitting inside the technology innovation and strategy group led by former Nokia CEO Stephen Elop, who joined Telstra from Microsoft where he headed up the company’s devices business.)
One of Arrigo’s favourite examples of how that initial public interface has been employed is a community group in Queensland that has leaned on the API to help monitor the thousand-kilometre Rabbit Proof Fence in the Darling Downs Rabbit Board area in Queensland. The fence is monitored by a series of Raspberry Pi single board computers, which use the SMS API to send alerts to rangers if there’s a break in the fence or gates are open.
“An SMS is a great way to send information,” particularly if there’s no guarantee of a ranger having a data connection or even a smartphone, Arrigo said. “They get a notification that a fence is open or there’s something broken and then they’re able to zero in on that particular area and fix the problem very quickly.”
Telstra has launched an online portal to support developers who use the public APIs, which now also include an API to locate Wi-Fi hotspots operated by the telco and a mobile-based authentication system.
On the partner API side of things, an example cited by Arrigo is work to increase the efficiency of information sharing between Telstra and franchisees and cut down on double entry: “We were able to put a partner API together that actually reduced the cost by a factor of 10 in terms of how they’re sharing their information. It made it a lot more effective when it came to passing stuff between the franchisees and Telstra.
“That was a really good example of how an API can drive down a cost and drive efficiencies in the business and as well drive collaboration.”
The launch of the first public interface helped drive an internal conversation about APIs, Arrigo said. Launching a public API also meant the focus of the conversation is customer-centric: “When it’s inside-out, it’s driven by IT — it’s an architectural conversation; it’s not really driving cultural change. But if you do it from the outside in, you have the business driving the change because it’s impacting customers, it’s impacting the way you deliver services.”
“It's not just a bunch of architects sitting around the room going, ‘Let's do SOAP,’” he added. “It’s, ‘What’s the value for our customer?’ I’m a big believer that at the end of the day it’s not about APIs but about the outcome they deliver. The APIs are a means to an end — the end is better customer service, it’s better delivery capabilities, it’s reducing cost.
“The API at the end of the day is irrelevant; it's plumbing, right? But it's also magical in that it allows those outcomes to come out.”
“There was a bit of serendipity” with the timing of the SMS API’s launch, he said: In early 2015 Telstra’s cloud chief Erez Yarkoni added the role of chief information officer to his responsibilities.
“Erez put together a new IT strategy for Telstra and one of the cornerstones of the internal IT strategy was all about an API-first culture — so really leading solutions with APIs rather than as an afterthought,” Arrigo said.
Internally, Telstra has had what Arrigo described as a “Bezos moment”. The reference is to a memo Amazon boss Jeff Bezos allegedly sent in 2002. In a 2011 Google Plus post, Google engineer Steve Yegge gave his account of the ‘Big Mandate’ issued by Bezos:
His Big Mandate went something along these lines:
1) All teams will henceforth expose their data and functionality through service interfaces.
2) Teams must communicate with each other through these interfaces.
3) There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.
4) It doesn’t matter what technology they use. HTTP, Corba, Pubsub, custom protocols — doesn’t matter. Bezos doesn’t care.
5) All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
6) Anyone who doesn’t do this will be fired.
Arrigo said that although it’s not quite that dramatic at Telstra — no-one at Telstra is facing the sack for not sticking an API in front of a piece of software — software projects that support an API-friendly design are more likely to be embraced, he said.
“That sort of became the carrot or the stick, depending on which way you look at it, to help drive behavioural change in the organisation,” he said.
Arrigo said the change has been driven by a “classic pincer movement”: On the one hand his grassroots efforts to promote an API-friendly approach and on the other support from Telstra’s leadership.
“From an internal perspective, it’s still early,” he said. “We kicked off last year with training and awareness. We’re mobilising our internal developers and our internal business around it.”
“Suffice to say there's momentum there, which is really good,” he added. “From an external point of view, based on partner and public APIs, we’ve had some good wins.”
“Where we find ourselves now is we’re really focusing on the internal API creation and build,” Arrigo said. “It’s like an iceberg: You see the top bit floating above the water but underneath, there’s a lot more. We’re at that point right now of creating these reusable services and over time making them able to be exposed publicly or to a limited set of our partners. Some things are moving quickly, other things are moving at the pact that they move within enterprises, but I’m feeling pretty hopeful.”