Truhoo

An all-in-one real estate platform
for the Spanish housing market

TEAM

16+ specialists

PERIOD OF COLLABORATION

September 2019 - present

CLIENT’S LOCATION

Barcelona, Spain

Business context

Our client is an entrepreneur who has held multiple positions in marketing and sales. Before working with us on Truhoo, he worked on multiple successful online projects. At the beginning of 2019, he decided to start a new project for the Spanish real estate market, attained investment, and chose Yalantis to implement the concept. The project is geared to easily scale across multiple countries when the time is right.

Business challenges

  • Identify particularities of and possible risks for the multiplatform end-to-end solution

  • Meet the budget and deadlines while building a feature-rich MVP

  • Manage several groups of external stakeholders engaged in project implementation

Product details

The first product version included all core functionality and ensured advanced user protection from scams.

3D tours

Truhoo 3D tours display floor plans and 3D property models. Moreover, users can record virtual tours with audio narration to give context to potential buyers and tenants.

Advanced property search

Easy-to-configure search allows users to apply over 50 filters that look both inside and out of the property. Prioritization and get relevant search results with no duplicate results thanks to synonym support and autocomplete.

Optimized media service

The platform is capable of simultaneously uploading up to 50 images each up to 20 MB in size for any real estate listing thanks to an optimized media service.

Protection from scams

To protect users from scams, we validate every agency before registering it on the platform. Cadastral numbers are also used to validate information accuracy.

Multi-language support

Spanish- and English-speaking users have access to all information in their native language, which simplifies the process of buying, selling, and renting properties.

Advanced property search

Easy-to-configure search allows users to apply over 50 filters that consider both characteristics of a property and its surrounding environment. Users get prioritized and relevant search results with no duplicates thanks to synonym support and autocomplete.

Protection from scams

To protect users from scams, we validate every agency before registering it on the platform. Cadastral numbers are also used to validate information accuracy.

Multi-language support

Spanish- and English-speaking users have access to all information in their native language, which simplifies the process of buying, selling, and renting properties.

Optimized media service

The platform is capable of simultaneously uploading up to 50 images each up to 20 MB in size for any real estate listing thanks to an optimized media service.

3D tours

Truhoo 3D tours display floor plans and 3D property models. Moreover, users can record virtual tours with audio narration to give context to potential buyers and tenants.

Solutions to our client’s business challenges

01 Our approach to solution design

For multiplatform end-to-end solutions like Truhoo, we use an approach that helps us identify the project’s particularities and possible risks at the very start. This approach is especially relevant for projects with budget and time constraints. It includes:

  • Collecting requirements from the client and external stakeholders (branding agency, SEO company, lawyers, and more)

  • Market research facilitated by subject experts’ input

  • Prioritizing requirements based on information collected

  • Designing the product based on common behavioral patterns among users of similar services

  • Building a solution architecture tailored to the project requirements

Let’s see how our approach to solution design works in practice.

Requirements elicitation and prioritization

Our business analysts follow our standard framework for eliciting initial requirements. This process includes gathering, discovering, extracting, and identifying business, user, functional, and nonfunctional requirements.

Artifacts that helped us establish effective communication for this project included:

  • A stakeholder register

  • Responsibility assignments

  • A communication plan with times when stakeholders were available and established communication channels

We also created:

  • A product vision board that described the purpose of the product

  • A value stream to understand the scope of work

  • A business objective model that helped us select in-scope features

Market research to identify market particularities

Along with working with our client’s initial requirements, we conducted competitor analysis of top Spanish and global real estate platforms. This helped us identify common difficulties experienced by users. To analyze these difficulties and find solutions to them, we:

  • Performed a heuristic evaluation to check the usability of and identify flaws in competitors’ platforms

  • Conducted overall usability analysis to estimate how easy and effective it was for users to interact with competitors’ platforms

  • Made sure the product would comply with Web Content Accessibility Guidelines to make our solution accessible for all users, including those with disabilities

Involvement of a subject matter expert

To better understand the product’s users, we worked with a real estate agent to validate details of their work and examine the software they used.

Based on our findings, we changed the project requirements as follows:

  • Postponed the creation of a messaging center for communication between agents and customers until a future release, as users more commonly communicate outside the platform

  • Avoided duplicating CRM system functionality for agents, as they use different platforms and are accustomed to tracking leads in their own CRMs

  • Shifted the focus from exclusively satisfying agents’ needs to satisfying property seekers’ needs as well, as property seekers are key to the platform’s success.

Market research helped us prioritize and split all planned implementations among product releases. The most essential functionality was included in the MVP to meet the business needs, strict deadline, and budget.

The UI/UX

For the product’s UI/UX, market research helped us:

  • Create a mind map that described the architecture and visualized connections, scenarios, and decision points

  • Simplify and shorten the user flow through implementing common real estate user patterns and minimizing clicks

  • Ensure brand identity and a common user experience for both the web and mobile versions of the product

Solution architecture

As a result of requirements processing, market analysis, and the need to meet time and budget constraints, we identified the following architectural requirements:

  • Build a scalable and robust system

  • Ensure cost efficiency of our infrastructure and third-party integrations

  • Enable the system to process and store huge volumes of media data (images, 3D tours, etc.)

  • Provide out-of-the-box localization support for all system components

  • Integrate with a mapping service and payment system

  • Allow for fast and smooth search and filtration by any number of criteria

  • Implement centralized logging and monitoring of hardware, application, and business metrics (based on these metrics, we chose the main places of conversion to monitor and added analytics functionality there)

The architectural solution we chose for the project is characterized by the following attributes:

  • A modern microservice architecture

  • A cloud-based server-side architecture built on the principles of security, scalability, modularity, ease of functional expansion, and maintainability

  • Centralized data persistence with master read-only replication, which ensures high availability and failure tolerance

  • The ability to process geodata within the database

  • A fault-tolerant key-value store managed by AWS for temporary data like access tokens and request counters

  • A single entry point for any type of client (web, iOS, Android)

  • Reusable REST API endpoints for any type of client

  • Asynchronous interconnection between system components whenever possible, as required by the microservice architecture and large volumes of data

We also decided to use the following tools and third-party services:

  • EyeSpy360 to implement a 3D tour feature

  • Elasticsearch to provide users with flexible search

  • AWS Lambda to optimize the media service

  • Elnforma for real estate agency background checks

  • Tiny Translator Tool to ensure multi-language support

Solution architecture for a Spanish real estate platform

This solution architecture helped to ensure cost-effective development, platform scalability, high-load media capabilities, flexible search, must-have integrations, and more. To see an example of such an architecture, please enter your email address, and we'll send you the template straight to your inbox.

02 Meeting the budget and deadlines while building a feature rich MVP

This project had strict budget and time constraints. Our client had attracted investors who allocated a limited amount of funds for platform development. They also required the project to go into production by fall 2020. To remain within the budget and deadlines, we used several project management techniques. COVID-19 forced some unavoidable business changes, but none resulted from missed development deadlines.

Estimating the project

Our established framework for project estimation helps us measure the use of project resources to meet budget and time restrictions. By using three techniques, we were able to effectively manage the project’s time and budget:

  • 1. Parametric estimation

    We use this type of estimation when the scope to estimate is huge but we still need to determine the project’s duration and cost. During project implementation, we made two parametric estimates by first estimating 30 and then 70 percent of the scope. The first estimate varied just 11 percent from the second, which 100 percent coincided with the final estimate.

  • 2. Budget spending estimation

    We needed to forecast the amount of money that would actually be spent. To do this, we made Estimate At Completion (EAC) and Estimate To Complete (ETC) calculations using the current indicators. These calculations became part of the project plan and the client’s sprint report to plan the budget.

  • 3. Estimation based on the UX

    We were responsible for the entire UX of the app. The branding agency from the client’s side had to provide us with a logo and a general UI concept. To speed up development while waiting for the UI concept, we estimated the cost of UX development and added 25 percent, as this is the average UI cost based on historical data from our past projects.

Project management practices that helped us manage the time and budget

The following project management practices along with the use of ready-made software solutions helped us speed up project implementation and save money.

  • Risk assessment sessions

    To get a better picture of risks, we conducted risk sessions. They helped us identify and prioritize all possible risks, such as the risk that a third-party tool wouldn’t work as expected, and find ways to prevent them.

  • Fast sprint planning

    Our project manager took the following steps to ensure fast sprint planning:

    • Prepared the team’s capacity for each sprint

    • Created a list of user stories with high case estimates

    • Collected all unfixed bugs and uncompleted user stories left from the previous sprint

    • Validated the sprint plan with a business analyst to save time during the sprint planning meeting

    • Shared, validated, and adjusted the plan with the team

As a result, sprint planning meetings became four times shorter while providing the same effectiveness.

  • Parallelizing development processes

    To meet the client’s desired completion date and also have a realistic vision of the project, we used a fast tracking technique. It allowed us to ensure different activities were completed in parallel instead of in series.

  • Measuring project performance

    We constantly measured the project performance against the scope, time, and cost to identify potential deviations from the baseline and fix them. Our project manager used a project performance chart showing the interactions of two key project metrics: the Cost Performance Index (CPI) and Schedule Performance Index (SPI). Sharing this information with the client and team helped us ensure high stakeholder involvement and awareness.

03 Managing several groups of external participants

During development, we cooperated with five groups of external participants, namely the client’s branding agency, real estate agents, a SEO company, lawyers, and translators. We needed to establish smooth communication with them.

We compared our roadmap with the schedules of external participants and identified dependencies and potential blockers. Then we aligned our schedules and established work expectations. We sent external participants constant meeting follow-ups and ensured transparent activity tracking.

Two examples of productive cooperation:

SEO optimization

Our client wanted to ensure a fast influx of users to the platform to gauge its benefits. We consulted an SEO company, followed their recommendations, and used SEO-friendly technologies.

  • 1. Angular Universal

    We used Angular Universal, as it allows for uploading page content on the server side so that an SEO bot can see it.

  • 2. URL building approach

    SEO specialists required us to avoid query parameters in URLs while using search filters. We followed the URL parsing mechanism to implement the required type of URLs.

  • 3. Metadata

    We ensured that while sharing links, an image and description were automatically represented. We achieved this by implementing open graph meta tags for all of the platform’s pages.

  • 4. Robots.txt.

    Pages not for indexing have to be written in the robots.txt file and have to contain a specific tag that also tells the search engine crawler not to index the page. We implemented a parsing mechanism that, in response to receiving the robots.txt file, sees pages that are not to be indexed and puts this tag in them.

  • 5. Dynamic XML sitemap

    We made the sitemap dynamic. It’s up-to-date, properly reflects the state of the site, and is generated  fast to be read by search engines.

GDPR compliance

As we were creating an online service for the EU market, we needed to ensure GDPR compliance. We consulted with our client’s lawyers, who reviewed and supplemented our GDPR requirements. We then implemented all requirements on the platform.

  • 1. We ensured active consent for Terms of Service and the Privacy Policy when registering and re-consent if terms are changed.

  • 2. All legal documents have versioning and can be edited from the admin panel.

  • 3. The Terms of Service, Privacy Policy, Listings Policy, and Cookie Policy are published on the website with the ability to print or save each document as a PDF file.

  1. 4. A user can subscribe to and unsubscribe from commercial communication.

  2. 5. A user can request their account be removed.

Project results

The released parts of the project were 10 percent under budget, and the project went into production in August 2020, as was required by the client. The developed MVP is:

  • Ready for marketing activities and SEO-friendly

  • Filled with sophisticated features that satisfy users’ needs

  • More user-friendly and faster than competitors’ platforms

  • In full compliance with the law and protects users from scams

  • Collecting the first real user feedback, which is being used to polish the service

Currently, we’re continuing to develop and support the platform. This includes implementing new functionality, processing feedback, refactoring, and fixing bugs.

Conquer the real estate market and beat competition

Having worked with Zillow, the US leading real estate platform, we can help you build a unique platform with advanced functionality and slick user experience

Get in touch