Anyone Home

Property Management App Uses Heroku + Salesforce to Empower Leasing and Maintenance Staff

Anyone Home provides a technology platform to help manage leads, showings, and service requests.

If you’ve ever called the number on a rental service website, you were probably connected to the Anyone Home team. Their friendly reps are there to help engage you in the process of finding, touring, and leasing your next home.

For property managers, customer engagement drives their business. When inventory opens up, they want to find great prospective residents and provide a smooth experience from inquiry through leasing. When residents report issues, they want to respond in a timely and appropriate manner. Customer relationships can last years.

Anyone Home

The founders of Anyone Home initially wanted to take the struggle out of leasing a new home for both prospective renters and managers. In 2013, they established a contact center that provides information on open inventory, schedules tours, and manages communications on behalf of property managers.

Because the customer relationship doesn’t end when a lease is signed, Anyone Home expanded their services to support residents to provide an all-in-one solution. The app now handles requests for maintenance, escalates emergencies, and even helps lockouts.

High-touch meets high-tech

To support their high-touch engagement solution, Anyone Home built a high-tech backbone powered by the Salesforce Platform. Their Anyone Home CRM relationship management app supports leasing and maintenance staff by automating many common tasks and tracking leads throughout the leasing funnel.

Salesforce provides a unified system of record that centralizes all customer information from their first call through the lifespan of their stay. Salesforce Service Cloud allows Anyone Home to provide fast, personalized customer support 24/7.

Seamless syncing on Heroku

The Anyone Home development team started out running their Anyone Home CRM app on AWS tied to their Salesforce instance on the backend. As usage grew, they found that pulling data from an API call to load every page significantly impacted performance. To mitigate this, the team built out their own SQL database in AWS to manage their app data. However, it became a huge burden to constantly manage that integration, making sure that the database was seamlessly synced to Salesforce. They had one and a half dedicated DBAs to make sure everything ran smoothly and still there were data migration errors.

In mid-2015, Anyone Home decided to move their app to the Heroku platform primarily due to its integration with Salesforce. They used Heroku Connect to ensure that data flows seamlessly between the app and Salesforce backend, and migrated their app data to a Heroku Postgres database. Since then, syncing happens in real-time on every object.

Moving our app from AWS to Heroku and using Heroku Connect to sync with Salesforce has significantly improved performance. Now data flows in real-time. It’s just magical. Mitch Moody, CTO, Anyone Home

Anyone Home

Along with their Anyone Home CRM web app, the team runs approximately twenty third-party integrations on Heroku including inventory management and accounting tools such as MRI, Yardi, and RealPage, as well as real estate information listing services (ILSs). The company also runs a prospect-facing app on Heroku called MyShowing. This app functions as a virtual lockbox, allowing prospects to register and gain an access code to self-tour an open property.

Migrating from MySQL to Heroku Postgres was really simple. We just had to change a few queries and we were production-ready. Mitch Moody, CTO, Anyone Home

Their initial app was fairly basic so the team wrote it in Javascript. When Anyone Home moved towards a full CRM solution, they decided to build a full stack PHP app using the CakePHP framework. Not only was PHP the core skill set of their team, but they also found it easier to recruit and onboard new PHP developers. They built their front-end using AngularJS and a responsive web design.

The development team extended their implementation with several Heroku Add-ons, including: Adept Scale to automatically scale dynos to match traffic patterns, SSL security, Heroku Scheduler to run scheduled tasks/jobs, New Relic APM for performance monitoring, and PointDNS for DNS management. They integrated Mailgun and Pusher standalone services but are transitioning to the add-on versions for easier management. The Anyone Home team uses Heroku’s Pipelines feature to help the team streamline shipping code from GitHub.

Anyone Home

Rolling our app out on Heroku was effortless. A really good experience for everyone on the team. Mitch Moody, CTO, Anyone Home

Managing data streams with Apache Kafka on Heroku

Anyone Home uses Apache Kafka on Heroku to manage data integrations with external accounting and inventory management platforms. They have hundreds of integrations that are constantly pushing and pulling data in real-time, providing clients with apartment pricing and availability, lead data, service requests, and more. Kafka allows the team to automate the processing of asynchronous data streams without having to manually monitor and manage process volume.

Like anything we implement on Heroku, the time it took to set up Apache Kafka on the platform was incredibly fast. It requires less management, and we have peace of mind knowing that once it’s set up correctly, the Heroku team will keep it running smoothly. Mitch Moody, CTO, Anyone Home

Prior to using Kafka, the team had used Heroku Schedulers and custom clocks to manage data flows. However, this approach required them to constantly monitor each job. As their business grew, they needed to manually split the load onto new schedulers. This created reliability issues and utilized too many resources.

With Apache Kafka on Heroku, the Anyone Home team was able to automate nearly everything and move more calls to a real-time push/pull data stream. Kafka allows the team to run asynchronous batches on larger data calls, which cuts the processing time in half, increases reliability, and reduces time spent on monitoring and management.

kafka-anyone-home

With Apache Kafka on Heroku, we can automate nearly everything and move more calls to a real-time push/pull data stream. Kafka allows us to run asynchronous batches on larger data calls, which cuts the processing time in half, increases reliability, and reduces time spent on monitoring and management.” Mitch Moody, CTO, Anyone Home

Since moving their app to Heroku, the Anyone Home engineering team has been free to focus on development. Freedom from the time and expense of DevOps means they can accelerate the evolution of their product portfolio. Heroku’s seamless integration with Salesforce means that Anyone Home customers experience greater performance of the Anyone Home CRM app.

App experience

Anyone Home CRM's customer-centric architecture is unique to the industry, which typically sees a property-centric approach. From an easy-to-use UI, users can pull up a prospective customer’s record and see a complete history, including properties they inquired about or toured, their full rental history, and all communications.

Anyone Home

Not only do property managers get tools to review records, score leads, and create tasks, but the system also adds a layer of logic to provide pre-configured sets of workflows. Depending on the prospect’s leasing path, Anyone Home CRM can queue up tasks that will help move the relationship forward. The app also provides metrics on properties, such as availability and pricing, as well as sales performance, such as lead-to-lease conversion rates.