Empowering the startup mentality with versatile cloud data services
Srinath Ranga describes the technical journey to building the Opteamize platform. “Our first prototype was built on a very traditional LAMP [Linux, Apache, MySQL and PHP] technology stack, but that wasn’t really ideal for two reasons.
“First, we were building a new business model, which is always a journey into the unknown, so we needed a platform that could evolve with us. We couldn’t plan out a rigid data model in advance, which meant that a traditional relational database wasn’t a good fit with our needs. A NoSQL approach would give us much more flexibility to adapt our data model as the business requirements became clearer.
“Second, we knew we weren’t always going to be dealing with traditional structured data. The information we need to track about our students could comprise images, certificates and all kinds of other documents. This kind of semi-structured and unstructured data is what document databases like IBM Cloudant were built for.”
When Cloudant was acquired by IBM, Opteamize was convinced that it was the right choice for their business. “IBM’s backing was a big factor in our decision. As a cloud-based company, if our database doesn’t run, our business doesn’t run either. The support, documentation and investment that IBM provides gave us a great deal of confidence in the platform—we weren’t comfortable with the idea of relying on a niche vendor or an open source community for support.”
For Opteamize’s developers, the experience of moving from a relational database to Cloudant was easier than expected.
“I think we were one of the first two companies in India to adopt Cloudant, but the support was excellent and the learning curve was not a problem. In fact, document databases are much easier to use than relational databases—the main challenge as a developer is to unlearn all your preconceptions about relationships, tables, rows and columns, and get used to the simplicity of a flat structure.
“Once we made the transition, we never looked back. The database just works—we spend very little time on managing it, and we can focus on application logic and front-end development instead. And because the data structure is so simple and easy to understand, it makes the other aspects of development much quicker and easier. It’s plain to see whether something is possible or impossible, and you don’t have to spend hours thinking about database schemas to work out whether the data is there or not.”
The fact that Cloudant stores all the data in JSON document format is also an advantage for Opteamize. With a user interface built in Angular, and a back-end running on Node.js, JSON is an ideal data structure that can easily be parsed and manipulated by both, without the translations that would be required with a traditional SQL approach.
“The fact that Cloudant is a cloud-based platform with global scalability is the final critical advantage for us,” comments Srinath Ranga. “We want people to be able to access our platform instantly from anywhere in India or around the world. And as we ramp up our operations and bring more students online, it gives us a platform that will scale easily without increasing the management overhead.”
Easier iterative development to meet clients’ needs
For Opteamize’s development team, the decision to adopt Cloudant as a core platform has had a significant impact on the way they work.
“When I first proposed moving to a NoSQL database, our developers were quite skeptical. But today, they wouldn’t want to go back to a relational database. Once they unlearned their SQL habits, they realized that Cloudant gives them more time to focus on the aspects of application development that really excite them.
“We have saved at least one member of the team from needing to be a full-time database administrator. Cloudant is a fully managed platform, supported by IBM experts 24/7—which means that from a maintenance perspective, we don’t have to worry about it at all.
“And because there is so little complexity to the data layer, we’re able to accelerate the development of new features and UI changes by as much as 20 percent. That’s critical when we’re working to customize our platform for a new business partner: if they make a suggestion about changing the interface or introducing a new type of data, we can iterate much more quickly and deliver exactly what they need.”
Looking beyond the underlying technology to the bigger picture, the Opteamize solution is helping India’s graduates to apply the knowledge they have gained at university, and to gain valuable experience with the latest technologies—building up the practical skills that employers are looking for. By stressing the importance of practical coding over lectures, and project work over theory, Opteamize is equipping a new generation of programmers for life in an increasingly competitive industry.
At the same time, Opteamize is solving a key problem for the wider IT industry: in a huge population of graduates who seem to have appropriate qualifications, which individuals actually possess the knowledge and skills to get the job done? By tracking and quantifying students’ performance on its courses, and making it easy to browse through student data and find the right person for each job, Opteamize is dramatically simplifying the recruitment process for employers both in India and beyond.
Srinath Ranga concludes: “IBM technology is helping us transform our students’ lives, enabling them to differentiate themselves from thousands of similar candidates by targeting the key skills that employers are really looking for. At the same time, we help our corporate partners find the best people at a fraction of the time and cost of a traditional recruitment process. It’s a win-win for them; and our partnership with IBM makes it a win-win for us also.”