When people talk about SOA, they frequently associate it with large companies with years of disconnected legacy applications. After all, many companies leverage SOA to rejuvenate their legacy systems and improve integration and business processes between systems. But SOA is not just for the big boys and it is not only good for connecting legacy systems. Implementing SOA can also be a strategic approach to launching a brand new startup!
Startups often rely on VC funding to secure enough capital to launch the first deployment of their products and services. It is not uncommon for startups to focus on their core technology and outsource everything else to other companies (payroll, human resources, accounting, and even infrastructure). One of the biggest challenges that well established companies have with SOA is shifting gears from the “way we have always done it” to service-oriented methods.
Why not start with a service-oriented approach out of the gates?
As I look into the future, I see a world of more business process outsourcing, more integration with both internal and external applications, more demand for business agility, and more mergers and acquisitions. As a startup, the information systems should be built with this future state in mind.
Startups are likely to partner with companies with complementary products or services to enable a quicker launch. Their solutions should be easy to access or “plug in” to their customers’ environment and should be easy to change or configure. And finally, many startups’ exit strategy is to be purchased by a larger company. The more flexible and agile the architecture is, the more likely startups can achieve these goals. Can you say SOA?
Now many of you may think that SOA is overkill for a startup. If you are thinking about SOA in terms of middleware, SOA governance tools, enterprise architecture teams, and huge time consuming road mapping exercises, then you are missing the point.
Startups can apply service-oriented concepts without the amount of effort that a several hundred person IT shop requires. First of all, startups typically have a very good idea of what they are trying to accomplish from a business perspective and are not bogged down keeping the lights on. So identifying candidate services should not be a long, time consuming process.
Second, since startups do not have years of legacy systems, it is highly likely that they do not need any middleware. Third, startups often have a very small IT staff and can self govern themselves without a heavyweight, formal process and governing body. In addition, they can start tracking their services on a spreadsheet initially and not have to buy expensive tools early on.
Many startups do not have an architecture team. Instead they have a handful of very smart people who are driven to deliver early and often. There is not a lot of need to transform the culture or get the business to change their existing business processes. Instead, startups have the opportunity to start with a clean slate and deliver a flexible and agile architecture out of the gates.
As the larger corporations struggle with large scale SOA initiatives, startups can make SOA part of their IT strategy from the inception and take a “built to change” approach to software development. In many cases, startups take more of a prototype approach to development, especially with their beta releases. But when it comes time to deliver reliable production versions, startups should consider implementing a light weight SOA to achieve the long term benefits of reuse, agility, and flexibility.