WSO2Con 2013 CFP Banner

WSO2Con 2011: Engineering to take over the world - Samisa Abeysinghe

Archived Content
This article is provided for historical perspective only, and may not reflect current conditions. Please refer to relevant product page for more up-to-date product information and resources.
Discuss this article on Stack Overflow
By WSO2Con 2011
  • 12 Oct, 2011
  • Level:  Introductory
  • Reads: 3482

In software engineering, the quality of a product is determined by the quality of the process, including the people and methodologies involved. In his keynote presentation at WSO2Con 2011, WSO2 Vice President of Engineering Samisa Abeysinghe explored the engineering aspects behind the evolution of WSO2’s lean, fully componentized middleware platform, which has revolutionized enterprise middleware in the data center and in the cloud. Here are some of the highlights from his talk.

About the Speaker

Samisa AbeysingheSamisa Abeysinghe, VP Engineering, WSO2 Inc has over 9 years industry experience, and has experience working for both software systems integrators and software vendors with global exposure. He has been a committer of the Apache Web services project, since May 2004, and initiated the Apache Axis2/C project. Samisa has published many articles, and has spoken at numerous industry conferences, including ApacheCon, ZendCon, IndicThreads, and more. He has also published two books: RESTFul PHP Web Services, and PHP Team development.

Problems viewing videos?
Download latest Flash Player

Just Enough Process…and a lot of Iteration

At WSO2, the focus is on having just enough process, Samisa said. He noted that there may be a detailed process on paper, but if no one puts it into practice, then it has no value. By contrast, if people have a process they can use—and if they buy into how things need to be done rather than having it pushed on them—you then have the basis for success.

An important part of the process is having an iterative engineering model that provides an opportunity for users to give feedback, Samisa observed. This helps to ensure that the resulting software addresses their needs. Without this feedback, he cautioned, an engineering team could end up building a product that no one uses.

Another aspect of WSO2’s iterative engineering model is to have R&D use a milestone model. The engineering team breaks down complex problems and delivers the solutions in pieces, Samisa noted. This allows WSO2’s CTO and architects to review the pieces and give weekly feedback, catching potential issues early in the process.

Make the Users Happy

Making the user happy is the ground rule with every WSO2 product release, Samisa said, and this means understanding the needs of the user. WSO2 team members listen to customers, but that is just the start.

“The best way to understand the users is to feel their own pain,” Samisa explained. To that end, WSO2 does not have separate design and support engineers. Instead, the engineers who develop WSO2’s middleware products take turns providing customer support.

WSO2’s approach eliminates a challenge that many software companies face when the support engineers don’t understand the underlying technology. It also provides valuable insights into how the engineering team can enhance WSO2’s software. When engineers go to customers and see what they do in the real world, Samisa noted, “They get to know that users ran into a problem because this other dependency was not thought through.”

“We don’t consider making the sales director happy equivalent to making customers happy,” Samisa added. “User happiness means we have to make our director of support happy.”

The Power of One

Visitors to the WSO2 website will see 15 middleware products for on-premise deployment and another 15 products for the cloud. In reality, WSO2 has just one product, the Carbon SVN, Samisa said. Both the WSO2 Carbon enterprise middleware platform and WSO2 Stratos cloud middleware platform live in the same code structure, and Stratos brings cloud-native features into the Carbon platform.

This product design means that there is just one engineering team working on all the components for a single platform, providing significant synergies, Samisa explained. Customers also realize an important benefit, since the same software can be deployed on-premise and in the cloud.

The value of “one” extends to the core of the company structure. The company doesn’t think in terms of departments, Samisa explained. Instead, everyone is part of the WSO2 team, and everyone is encouraged to contribute ideas, regardless of whether they are in engineering, marketing, sales or another area. In that sense, the WSO2 team is much like the company’s software; the whole is greater than the sum of the parts.

It is also why Samisa said, “I get so inspired on a daily basis.”

To learn more how WSO2’s approach to engineering has contributed to the company’s success, view Samisa’s keynote here.