A growing app development agency seeks to become even more competitive. Modulus enables it to deliver apps faster and achieve reliability and scaling without being distracted by infrastructure management.
Differential, a successful, growing app development agency, seeks to become even more competitive. Modulus Enterprise edition, coupled with Meteor, enables the agency to develop and deploy Node.js apps more quickly while and achieving reliability and app scaling without being distracted by infrastructure management. With Modulus, Differential can deploy Meteor apps in hours, not days. Modulus has become a platform that functions like an ops team for Differential. Modulus makes it possible for Differential to focus on cultivating its competitive edge as a development agency and rely on Modulus for operation of its infrastructure.
Differential and Modulus
Faster Time to Market, Focus on Core Capabilities, and Simplified System Management
Differential was experiencing what some might call a high-quality problem. The 18-person application development shop had tripled its revenues in just one year. With clients ranging from Fortune 500 corporations to startups, Differential was in demand, being asked to create productivity tools, online marketplaces, and data analytics apps that could work on both web and mobile platforms. Rapid growth still nevertheless presented challenges to the firm. They needed a technological foundation that would enable them to do their best work, exceed client expectations and thrive as a business.
The Challenge: Competitiveness, Focus, and Profitability
As Differential grew and attracted more clients, the firm experienced a host of competitive and operational stresses. With a core team of Ruby developers now working in Node.js, Differential was confident that it could deliver an end product that clients would love. However, in order to be profitable, Differential needed to be able to develop apps quickly – more quickly than its competitors – and do so at competitive rates. Then, after apps were finished, they had to function reliably and be able to scale.
Differential struggled with these conditions. “It was really an issue of focus,” said Colin Flynn, Differential’s General Manager. “We were doing great work in Node.js, but we lacked a coherent development environment and our attempts to find a hosting platform were not going well. Would we have to take our eye off the development ball and allocate people and money to the platform and hosting issues? We preferred not to.”
Differential eventually selected the Meteor framework for developing Node.js applications. Meteor made it simpler and more efficient for the Differential team to create great apps for clients. Hosting, however, remained a sub-optimal operational area. After experiencing unreliable service and poor support first with multiple vendors, then with a single established Platform-as-a-Service (PaaS) provider, the company considered developing their own hosting solution on top of Amazon Web Services. While this might have been possible, it represented a major distraction from Differential’s core development skillset and would have necessitated hiring staff solely to assemble and run the hosting solution.
The Modulus Solution
Differential explored whether Modulus’ dedicated Node.js hosting solution would work for their needs. Modulus offers a low-cost trial which made it possible for Differential to experiment with the platform before committing to the more robust Enterprise Edition. Modulus combines hosting of Node.js applications with a range of complementary management and service options. The platform runs application instances on mini-servers called “servos,” which administrators can dynamically add and remove from their apps at any time, with traffic automatically load balanced between them. Modulus is built for application developers, with custom SSL, WebSockets, MongoDB, statistics, mobile app management, and advanced logging, reporting, and analytics. Each Modulus project has access to unlimited persistent disk and database storage.
Differential was impressed with these features, but they were particularly interested in the Modulus capability to scale applications easily. With Modulus, every route to the app is tracked individually, which allows admins to identify exactly what parts of the application get hit the most and what parts are causing performance issues. Data is updated real-time, so when an event occurs, action can be taken immediately. Modulus enables admins to add servos or manage load using a web interface. “With Modulus, we can flip a switch and turn servos on and off to scale quickly. The platform lets us troubleshoot rapidly. As a PaaS layer, Modulus gives us the ability to react if we get hit with traffic. We can add servos with the click of a button and Modulus handles all of that for us,” said Flynn.
Modulus also made a decision that they would write scripts to run Meteor-based apps effectively on top of their platform. No other company was doing it, so Modulus opted to create the scripts for the sake of the whole Node.js and Meteor communities. With scripts available to run their Meteor apps on Modulus, Differential elected to deploy its clients’ apps on Modulus.
Benefits: A Platform That Functions as an Ops Team
Differential has experienced numerous business benefits from their decision to host their Node.js apps on Modulus. According to Flynn, though, the essential benefit is that Modulus functions effectively as Differential’s IT operations team. The business benefits mostly flow from this central advantage. “Reliability is huge with Modulus,” said Flynn. “They are on the job, focusing on our sites 24/7 – making sure they are always up and that any kind of attack or traffic anomaly gets handled. We can focus completely on development, which is what we’re good at.” Benefits from Modulus include:
SPEED The combination of developing on Meteor and rapid deployment on Modulus makes Differential fast and competitive. With Modulus, Differential can confidently deploy an app in less than an hour, a process that used to take days and was uncertain even in the best case.
VALUE TO CLIENTS The efficiency enabled by Modulus gives Differential the ability to develop apps on tight budgets.
SAVINGS AND PROFITABILITY Modulus is paying dividends by helping Differential avoid extra hiring as having its people maintain knowledge of the infrastructure.
Differential can focus on development and cultivating excellence in that core competency. Flynn said the transformation after the move to Modulus feels as if the agency has a team of people who are managing their servers. Before, Differential had to hire a team of people to do that. Now they can rely on the service of Modulus without having to staff up. “We can focus on what we do best. I don’t have to be a knowledge expert on deployment and scaling” said Flynn. “I have learned where I’m good and where I can trust others. Before, I would have to spend a lot of tine building up that knowledge base for myself and maintaining it. It’s a lesson in trust.” From a few conversations, Differential has been able to build a system that it can rely on. “I want our team to be really good at building Meteor apps,” Flynn added. “That benefit itself really trumps all.”
Conclusion: Peace of Mind with Modulus
Differential’s management team does not have to worry about deployment, reliability, or scaling issues. If there is any issue, Differential is able to take advantage of the Modulus support team and the platform’s built-in troubleshooting capabilities. “It’s a win-win with their support,” said Flynn. “We get a lot of great graphics on memory usage, and server logs, giving us visibility into any errors, what kind of performance we’re getting – all key metrics and ways to troubleshoot. But then, when we call them, we’re talking to people who are personally knowledgeable about the technology. This isn’t just a support line. They can actually make changes, very rapidly. I know that the work is handled. It’s a good feeling to know that you have people who are watching your apps. I can sleep a night. The site isn’t going to go down and I won’t have to go down and reset the server.”