Hotwire Tech Blog

Scribes from Hotwire Engineering

Introduction Typically, when users search for content using Google Search on their mobile devices, they are directed to the corresponding mobile web page or in some cases the actual web page itself. This often leads to a sub-optimal user experience mainly because mobile users are limited by screen size and processing power. Also web pages… Read more…

Introduction At Hotwire we build machine learning models for various purposes, such as to power our hotel sort or to drive our hotel pricing strategy. We spend our time substituting data-driven machine learning approaches for legacy human curated set of business rules that are difficult to scale as well as to incrementally and systematically improve…. Read more…

Problem: In a service-oriented architecture, often there is a need to cache data. Hotwire Search Team has built a data store for caching static information about hotels such as star rating, neighborhood data, amenities, etc. which is backed by in-memory DB Redis (Elasticache). This cache is exposed via an API called Hotel Static Data Service… Read more…

What is Kotlin? Kotlin is a new programming language from JetBrains, the maker of the world’s best IDEs. Kotlin compiles to JVM bytecode or JavaScript. Kotlin is a statically-typed programming language. Kotlin is designed to interoperate with Java code and is reliant on Java code from the existing Java Class Library. The syntax is lean… Read more…

Less-Manual-More-Automation Hotwire follows microservices based architecture. However, splitting the core functionality into microservices is a challenge in itself. Integration testing is very important to make sure all the microservices work well together. That is a primary reason why teams here rely more on test automation. Test automation make it easier for teams to be agile and deliver… Read more…

Overview   Our Android app had grown at a rapid pace, and more growth was on the way. Our UI widgets were defined in the same classes as our API response handlers. Some of our activities were over two thousand lines of code. Activities and Fragments that had originally seemed short, succinct, and well organized had… Read more…

Image comparison in automated testing powered by ImageMagick Latest trends suggest that image comparison in automated testing is becoming popular due to growing number of mobile devices and complexity of their UI. At almost every Selenium-related event, speakers mention such tools such as Applitools Eyes or Sikuli, even more so at Appium-related conferences and meetups. So,… Read more…

It’s no secret that marketing spend is a significant boulder for any consumer company. There are numerous ad-networks and platforms that marketing teams use to run their campaigns. Given the plethora of choices, it is really hard for them to make a decision on how to distribute their marketing spend across these different channels. Marketing attribution… Read more…

For companies interested in measuring customer satisfaction, the Net-Promoter-Score (NPS) is a widely adopted method and standard. So what is NPS? NPS could be calculated based on the average response of a set of customers to a specific question: “How likely would you recommend our company to your family or friends?” While several variants of… Read more…