A few weeks ago, Roompact held its first users conference. This was a great opportunity for our team members to interact with our clients and hear about their experiences with Roompact. We received both praise and constructive criticism, giving us plenty of insight into what user-facing features would be beneficial to focus on as we continue to build Roompact.
One other question we heard a few times was along the lines of “Why hasn’t Roompact released any major new modules in 2018?” This is a fair question. In 2016 we released Schedule and Events. In 2017 we released Forms and later Resources. Given this pattern, it’s reasonable that someone might anticipate large new features every year. However, 2018 has not seen the release of a major new module. We have seen many incremental updates to several features, but nothing as large as some of the modules from previous years.
Why was the cadence of large new feature releases broken? Has the Roompact software engineering team become complacent? Has our impetus for building new software vanished?
We have spent a portion of our time this year on a wide variety of tasks that I would describe as “digital plumbing”—technical tasks related to building software that are very important but most people do not see or think about, unless there is a problem. Plumbing is my example of this because its nature is very similar to the types of technical tasks we have spent our time on this year. When you use your kitchen sink or take a shower, you seldom think about the plumbing system in your home or apartment. That is, unless the water does not turn on, or the water never gets hot, or the sink doesn’t drain. You place your trust in plumbers and plumbing engineers, who have an expert-level understanding of the system of pipes and related components in a building, to design and build reliable plumbing systems. These components are critical, but they are out of sight and out of mind for most of us.
Roompact has its own set of critical systems that are much like the pipes in a home. These systems are important, and their health is crucial, but they are only noticable when there is a problem, and oftentimes only through side effects.
For example, we use high-performance data servers to store information that is accessed frequently, allowing many of our application pages to load in under one second. Maintaining our database backup systems ensures that we’re prepared to restore data in case of a hardware failure. Automating our system infrastructure allows us to quickly deploy servers to handle the influx of users during busy times of the year. This makes the difference between deploying an extra server in 2 minutes and in 2 hours. Having up-to-date software and configurations keeps user data secure, ensuring the integrity of our application and the safety of our users.
In 2018, we have spent time working on each of these and other systems. These are efforts that have been necessitated by our growth as a company and the demand for Roompact. As Roompact becomes more important to more people, and as the number of our users grows, continuing to perform work like this is essential. New features and updates are like redecorating your room or buying a smart TV. They are exciting and helpful. But if you turn on your faucet and nothing happens, that rapidly becomes your primary concern. Our job as software engineers is not only to build new features, but to first and foremost ensure the integrity of Roompact as a whole.