Looking for more podcasts? Tune in to the Salesforce Developer podcast to hear short and insightful stories for developers, from developers.
26. Connectivity in the Woods
Hosted by Jason Salaz, with guest Zach Feldman.
With a plethora of technology surrounding us, we sometimes neglect the importance of unplugging in order to recharge ourselves. Getaway is a startup that offers short-term cabin rentals, with a twist: their locations offer no WiFi service or cell connectivity. Zach Feldman, their VP of Technology, joins us to talk about the technical challenges ensuring cabins are unlockable and guests are satisfied when their devices are unable to communicate.
Getaway is a startup that offers short-term rentals. They specialize in ensuring that the domiciles they offer are far outside city limits and often inaccessible to Internet and cellular connectivity.
Zach Feldman, their VP of Technology, chats with Jason Salaz, a member of the Heroku Support Team, about the unique challenges this requirement imposes. For example, rather than providing a physical key, guests can unlock their cabin door's smart lock with a unique pin code. In order to support their efforts to scale, a custom API was built to ensure that pin codes are registered and deactivated for every check-in and check-out.
Cabins are also equipped with other IoT automation devices, such as leak sensors, which report back to Getaway House if pipes are leaking. Both of these technologies were designed to work on the low latency connections that the cabins are equipped with.
Relying on SMS is another way that the team is able to provide service, as those networks predate much of the current infrastructure that smartphones have come to rely on. Building correct and functional software is difficult, but Zach notes that there's an even greater challenge in scaling fault-tolerant systems in the woods.
Links from this episode
Jason: Today, we're going to talk about home automation with Zach Feldman, VP of Technology at Getaway. I am Jason Salaz, a member of the Heroku Support Team at Salesforce and automation and gadget enthusiast.
Jason: Zach, would you like to introduce yourself?
Zach: I'm Zach Feldman, as mentioned, I'm the VP of Technology at Getaway House, that's getaway.house. What we do is we build tiny cabins in nature, but two hours outside the city, where people go for a night or two to disconnect from work, from wifi, routines, and actually just take a break from their lives. Before working at Getaway, I was the co-founder and Chief Academic Officer of the New York Code + Design Academy, which is a programming school, and before that I was a software developer at Contently. I'm really happy to be at Getaway now, to help people really escape and reconnect with what's important to them out in nature.
Zach: Yeah, it's a pretty strange thing, I know, and it's also weird to be VP of Technology for a company that de-emphasizes technology so much. But what I think we do is we use technology where it's needed and then we use just good, old-fashioned business sense, and a sense of what a consumer really wants everywhere else, and focus on that. The solitude, emphasis on doing nothing, and all these other things that make our product so unique.
Jason: So I was looking around at Getaway's service and I saw six locations currently outside of some pretty major metropolitans.
Zach: That's right, yeah. We're lucky enough to have locations outside of New York, Washington DC, Boston, Atlanta, Portland, also between Pittsburgh and Cleveland, and we're pretty close to having our first guests at our Los Angeles location.
Jason: So a couple of questions about the service itself. I have a couple of home automation devices around the house, it started with Philips Hue bulbs, I've expanded into an outdoor camera in addition to a doorbell camera, most recently garage door automation as well. And all of these are fairly all disconnected technologies from each other and they usually have some kind of a tie, be it the Google Home litany of devices that they publish, HomeKit with any HomeKit hub, such as an Apple TV, HomePod, even an iPad, etc, and all of these things that kind of tie everything together through an API or other sort of centralized communication method. But the one point that strikes me is that in setting all of these up, I as a homeowner with these devices have to very explicitly say, this device is in this room, the system knows that this device is a light switch, it has an on and off state, maybe a color, maybe an intensity, those sorts of things, but it's still a lot of very disconnected devices that I have to set up every time. So could you give us a rundown on how many of these devices are in any of these Getaway homes, and what the setup profile for visitors, for guests, looks like?
Zach: Sure, yeah. Well, the devices aren't really super accessible from the guest side, so it's mostly about making sure they have a great experience without even having to interact that much with technology. So most of the tooling and things that we've built are to control these items from our side and make sure that if somebody calls us and they're locked out of their cabin at 2:00 in the morning we can help them out and trigger that unlock and just really make sure they have a great experience when they're staying with us.
Jason: I've, unfortunately, not been able to be a customer of Getaway yet, there's no location near me, but travel is certainly an option in being able to get there. What I have done is been to hotels that are starting to offer more and more smart integrations. Earlier this year I was in one that had a reasonable amount of in-home control, but the vast majority of hotels typically you have the app, check in, and then you get a digital key where you can wander up, hit the button in the app, wait a couple of seconds, and then the door mechanism makes its chime that you're able to get in. What makes Getaway more unique against these sorts of experiences that seemingly most hotels have adopted?
Zach: Well, as I said, technology really needs to fade into the background at Getaway, but like any modern company we have to use technology because everyone uses it in their daily lives. So, for instance, our booking process, you don't ever call a hotel these days to make your booking, you're going to go online to their website and do it. So we've got a great website, desktop and mobile experience to allow you to really easily book a room at Getaway. We also allow guests to reschedule and even cancel their reservations themselves through their Getaway account.
Zach: So you currently book through us, we don't currently work with any OTAs, and we've really integrated this checkout process to make it really easy and seamless for guests, whether they're on desktop or mobile, with completely separate experiences built for both, with the limitations of those platforms in mind. And really just allowing guests to self-service and help themselves out rather than having to contact us.
Zach: We also have notifications to keep you informed about your reservation in a friendly way, so we obviously will send you a confirmation email once you book, we'll remind you seven days before your stay that it's coming up, and what things to keep in mind for your Getaway stay to make sure that it's really fun. We also will send you a lot of text messages if you're into that, so making sure that you know what your door code is that day, and, once again, just kind of up-to-the-minute updates on whatever is important. So if there's any special information for the location you're checking into we'll make sure to include that.
Zach: And then there's two or three other systems that are really helpful for guests. So we also have a guest feedback system, so every single day within our company's Slack, and also through our emails, we'll get notifications about things the guests are saying about Getaway. It's very important for us to see and hear the guests and make sure that they're really happy and having a great experience, that's what hospitality is all about. Our CEO reads a lot of those, personally responding to them.
Zach: And then finally, really I think one of the more interesting things we do is the in-house technology. So we have leak sensors in all the houses. If there's a leak underneath a sink ... Water damage is a huge problem architecturally and foundationally, and so we can fix problems in hours that other businesses could have problems with for days. If you have a leak in your business and you don't find out for a day it could mean that that unit is offline for a very long time, but we have an advantage there.
Zach: And then one of the most exciting things is that we built our own door lock system. So, piggybacking off of some existing technology, we created a system that will change the code every day for the guests arriving. It allows people to kind of come up and just punch in their code and not have to interact with a human or a front desk, and people really like that. And there really were only a few things commercially available to support this effort, and so we really ended up building our own solution ourselves, mostly from scratch. Using some consumer components, but tying it all together with a lot of code, and, of course, our great host, Heroku.
Jason: You mentioned a lot of details in there about ever-changing details, things nearby the door code to get into the house in the first place, but how can customers who visit actually be able to truly disconnect while they are in one of these Getaway homes?
Zach: That's a great question, Jason. So obviously it's one thing to disconnect while you're at the house, but it's another to disconnect on the journey. We do encourage people to really disconnect as much as they can, but getting there is one thing and getting into the cabin is another. We encourage people to print out directions and just have kind of an analog way to arrive, but in the modern world we live in that can be very tough. You want to see the traffic updates, you want to get there the fastest way, so where we really encourage disconnection is in the cabins themselves. What we've done is we've put a cell phone lock box in every cabin, so when you arrive we encourage you to put your phone in there. There's actually not a physical lock on the box, but there is a latch, and the idea is that if your phone is in there and it's off or on silent that you're hopefully not going to use it during your stay.
Zach: And you really can disconnect, the systems I was talking about allow you to do that, so if you memorize your door lock code you're not going to need to use your phone to refer back to it, but if you do, you know, maybe you look in your cell phone lock box for a moment. And we don't really frown upon that, but we do encourage you to not be constantly checking your phone, and to be a lot more in the moment, because a getaway is supposed to be kind of a healing experience. It's supposed to be a bit of a place for you to make a lifestyle change or for you to think critically about what's been going on and really focus on your wellness. So ...
Jason: And be able to get away from timeline swiping and news skimming and all of these things that-
Zach: Yeah, yeah.
Jason: ... we fall into pits of lately.
Zach: Yeah, just this mindless, let me see what the next post on the feed is. We're trying to break that feedback loop by having you put your phone in that box and just close the lid and not think about it the rest of your stay.
Jason: So with all things technology-powered and everything else, what does happen if a guest is locked out, doesn't remember their code, the battery on the lock unit is dead, their phone is inside? What is the, in this case the very analog disaster recovery story?
Zach: That's a great question. Well, part of building technology for Getaway is dealing with the realities of where our locations are. All of them are an hour and a half to two hours outside of major cities, so not a lot of my engineering friends have this problem where there's very limited internet options or reception or anything to communicate with whatever their servers are out in the field. For me, those servers are a bunch of tiny houses that are set up for us with our various home automation technologies, but we need to have a backup in case those technologies fail us because for various reasons they can. I mean, if the batteries in the lock are dead, then they're dead, and we try to practically replace them, but it happens sometimes.
Zach: So we do have manual lock systems as a backup, and basically what that means is there's a spare key somewhere, we can help you locate it. And then we also have 24-hour GX support, so our guest experience team is always on the line ready to answer your call. And for our locations with very limited cell service we also have an emergency phone, and you can always call them and say, hey, I got locked out of my cabin, the code's not working, the battery's dead, I've tried everything else and this just isn't working, and they're very happy to help you.
Jason: And I assume those phones are probably solar-powered, small battery, just enough to make a good, old analog POTS phone call back to you folks?
Zach: Yeah, yeah. I mean, they're really ... like I said, we have to figure out how to get these things working out in the middle of nowhere. So, as an example, we actually weren't able to do solar power off the grid for the most recent installation, we had to do a trench, install a line to the actual phone where we wanted it to be placed. We're solving pretty difficult problems that aren't just as simple as sliding the slider on Heroku to add more servers, you need to actually get somebody out there with a shovel and dig a trench, so that's what makes this job pretty exciting to me.
Jason: Wow. Yeah, I guess I'm comparing it to roadside, highway emergency call boxes, where, generally speaking, they are in vast, open areas with a solar panel that can be aimed at the peak of the sun's traversal across the sky. But in these locations they're probably, I imagine many of them are heavily forested and natural and have a lot of ... and easily would obscure sunlight. I'm sure hydro power is not necessarily a recurring option and those sorts of things, so just-
Jason: ... just close enough to grid services while not being next to a power plant or something-
Jason: ... something obnoxious like that.
Zach: We did a lot of experimentation in the early days with off-the-grid technology, this was like a few years ago, and although it's very interesting and I think there's a big future in it, it really wasn't there yet as far as making sure things were really reliable for guests. So obviously we have an eye towards sustainability and we carry that out in other ways, but, yeah, sometimes you do have to just run a line, that's just the easiest way to do something.
Jason: So you've mentioned scaling a couple of times now, and I can ... again, I as a homeowner with these individual devices, I can see one, two, maybe three houses with sufficient modern conveniences of reliable, ISP-backed internet and everything else, but what does scaling look like to cover every single house in every single site that Getaway has cabins in?
Zach: Before I go into that I'd love to talk a little bit about how we built the lock system in the early days, because back then we only had three or four cabins, and then I can definitely go back and talk about scaling as well.
Jason: Makes sense. Start with how you did it, and then go into how you scaled it up to multiple locations.
Zach: Absolutely. So when I first started at Getaway I was a freelancer, like a lot of people at early stage companies, and basically I was paid in a little bit of cash and a little bit of free nights. So I would spend a lot of time up at the Catskill location writing code by a fire, which was pretty fun, and one of my first tasks was, you know, we need to change the codes every time a new guest checks in. Right now the way we're doing it is we're actually opening up the back of the lock and changing it manually for each cabin, and we have around four or five cabins, so it's not a huge deal, but imagine if we had 14, 15, 16, 20, 100 one day? This really isn't a scalable system.
Zach: So scalability was the first thing that started this conversation about how to build a new lock system. And what I did was in a few of these trips, sitting by the fire outside of my cabin, I started working on a new lock changing system for Getaway. Testing the code, just kind of trying different things, and really just making sure that whatever I built would actually work for one cabin to start with. So that was pretty fun. I went up there for probably three or four nights before I got to something that would work, and basically it was a magical moment when I deployed the code. I hit that unlock button and I heard the magical buzz, and suddenly the lock was unlocked. Obviously I'd tried probably 50 times before that with no luck, but-
Jason: Of course.
Zach: ... in that case the Z-wave signal traveled and the lock unlocked, and I was suddenly an extremely happy person.
Zach: So after that it was a question of, okay, this works in the one cabin, how can we deploy it to the rest of the fleet? At that point the fleet was less than 10 cabins, so as that freelancer I just started walking around, looking at how those cabins were set up, ordering some identical equipment and installing that in the other cabins, you know, seeing if the system would actually work across more than one cabin.
Zach: So it worked well at first, and it really did scale out to that number of cabins. There was a lot of learning, there was a lot of trial and error as we did that. After we deployed the system to around 20 or 30 cabins ... I was in a cabin one night at our pop-up in Staten Island that we did for one summer, and I was testing the system, testing out some new code, unlocking, locking, unlocking, locking. And I was selecting the right lock to work on and suddenly the code stopped working for some reason, and I just kept hitting lock and unlock over and over again, or writing the equivalent commands from my Rails console, and nothing was happening. And then I made a small change and suddenly everything started working again.
Zach: And it turns out the next day we got a message from some guests who said, I think there's a ghost in our room, the lock keeps locking and unlocking over and over again and it won't stop, it only stopped after around 30 minutes. And that's when I realized I had selected the wrong house ID to work on, and unfortunately I had made these guests think there was a ghost of some kind haunting their cabin. So that was, you know, we've come a long way from that, and we're not unlocking the wrong doors at this point, as far as I'm aware of. And I don't think there's any ghosts, so there's nothing to be afraid of, just some errant code.
Jason: We as engineers all know that continuing to do something that isn't working is often foolish, assuming the operation is determinate, but that is a very interesting way to think that doing something over and over, even if you don't see it in your destination, may be inadvertently affecting some other destination entirely that is in production somewhere in this particular case.
Zach: Exactly. It seems like there have been a few outages in the last few weeks that have been caused by something like that. And HugOps, I mean, I feel bad for all of them because nobody's ever trying to bring the site down, but-
Zach: ... yeah, I mean, it can just happen where you've selected the wrong environment. It's a big problem. So ...
Jason: So with this scale that you're currently at of the number of cabins and locations, do you know of an upper boundary of scaling with any current implementation, hardware, software, anything else along those lines? Is there a known ceiling to you today?
Zach: Yes, there definitely is. We're relying on some kind of more consumer-based solutions right now. We're up to around 150 cabins, and it's working all right, but there's a few parts of the system ... some parts of the system rely on web scraping, for instance, and we know that that can be a bit unreliable. As an example, we added another 25 hubs to our system two or three weeks ago, and one of the jobs that checks unlocks, that has failed. I went in to take a look at it and realized it was because suddenly we were on page two, and they'd never been to page two before.
Zach: So we've all been there where you build a system for one sense of scale and then it outgrows that sense of scale, and then suddenly you're at the new normal, but you haven't written code to get yourself to the new normal. So that was a fun day of just a lot of patching and figuring out, okay, how do I paginate while using a web scraper and make sure that it's reliable and every single time it works correctly?
Jason: Yeah, and to not even say anything along the lines of, I'm assuming, anything from sessions to actual persistent cookies or anything else along these lines.
Zach: Yeah-there's a lot of potential issues when you're doing web scraping, so ...
Jason: The interactivity of clicking the link to the next page or the page number or what have you is probably the easiest part, in my opinion, of the whole thing because it ideally is just reloading a new view of the same content that you continue to iterate through. But it's all the rest of the details of things we take for granted in a web transaction that you have to start doing to have persistence across, not just page two, but, assuming you haven't gotten up to page five or six by now or anything else along those lines.
Zach: Yeah, exactly. You don't want to just go to page two, you want to go to page N, whatever that N is, so-
Zach: No, we're using, to get into specifics on the web scraping, we're using Capybara, which is a pretty popular framework for testing, and we're using it to kind of just get additional data about the system. And one of the problems with it is that you go to test it out using ChromeDriver on your laptop and everything's looking great, but then if you want to get it into production you want to use something like, I think it's Poltergeist, which is basically headless, it doesn't need to have an actual window open, it can actually just scrape kind of server-side. And you go to test it in Chromium and it works fine, and then you go to the headless setup and suddenly you're having all these problems about finding things, and it's much harder to troubleshoot. So a big learning from that was figure out how to take screenshots at least when you're using a headless browser if you can't follow along interactively, and then that'll show you kind of where the browser is at. And that saved me countless hours, so ...
Jason: Right. Yeah, the library differences between a desktop and a server is constantly a constant battle in engineering because, try as we might, environments always differ in some manner. And there's no lack of technologies to attempt to mitigate that, but it's only as good as the tools we have put together while also putting together the project that we want to do, the fun part of engineering, and not the part that we have to put up with to have this infrastructure.
Zach: Exactly. My project wasn't to improve Capybara, as much as I'd like to, it was to just get the scraping to work. But luckily there were so many helpful posts on Stack Overflow and all those other sources that I was able to figure all those things out. So ...
Jason: So you've gone from manual code rotation to the first steps of automation by yourself and a couple of cabins in one particular site, but how did that wind up scaling up to multiple locations that you don't actually need somebody nearby in each of the six Getaway locations?
Zach: So the way that it's scaling up to multiple locations without having to have too much of an interaction is honestly dealing with errors correctly, so just like building any type of software you want to know when your system has failed so that you can actually take some action on that. And part of what we've done is if there is a problem changing a lock ... and, once again, these are really adverse conditions, these are cabins in the middle of the woods, this isn't a data center that's hooked into the Google Cloud or something. These are just houses that are in the woods, so failures happen occasionally, you know, running the job, and what we've built is a system that alerts the site team.
Zach: We have people that are local, that are on-site, that are making sure the guests have a great experience, turning over the cabins, just looking after things. And they're a huge part of the team. We wouldn't be able to do what we do without them, so if any of them are listening, thanks. But what we do is, we built a system that is resilient enough that if we have a problem communicating with a cabin we send an automated text to those local staff members and tell them, hey, this cabin may have had an issue changing over today, you may want to take a look at that, make sure the code is set correctly.
Zach: So when you're building solutions that are for low connectivity environments or environments with almost no connectivity, you're going to have to have some type of backup for when your server can't talk to the client. And sometimes that is just a human going there and taking care of it. It still really solves a huge problem for us because even if only 95% of cabins are returning success that still saves a ton of work going cabin to cabin changing locks manually.
Jason: Absolutely. And it frees up the human resources to be able to focus on the things that do need to be maintained, living spaces, bedrooms, those sorts of things, but then if another issue is identified you have a human on-site. And you can communicate with them on an automated basis to say exactly as you said, hey, can you test this lock, make sure it's working, it apparently didn't update, should be this-
Jason: ... and go from there.
Zach: Exactly. But you're right, I mean, I'd rather they be working on, okay, is everything in the provisions bin that's supposed to be, to write a really nice guest note to the guest to say hello and hope they have a great stay. I don't want them to be thinking about, did the lock code change correctly, you know-
Zach: ... that's the technology's job to take care of, so we try to make it as easy as possible for them, and as painless as possible, so that they can really focus on that guest wellness experience.
Jason: Any other funny stories like the ghost lock interactivity?
Zach: Luckily, not too many. It's really just like I said, kind of getting that last 5% ironed out. I'd love to talk a little bit about some of the UX improvements we made after launching the first version.
Zach: So, yeah, obviously the first step was, how do we go from a world of changing locks every time manually that a guest checks in to automatically changing them, that was step number one. After that it was a question of, well, what happens if somebody gets locked out and they don't remember their code, is there any way to let them in remotely? So one of the things we built is a dashboard for our staff, where they can take care of that and handle it for guests. Obviously heavily guarded and secured, but people log in and they can let a guest into their cabin if they're locked out, which is really helpful.
Zach: Another really huge improvement that I've really enjoyed seeing rolled out was the ability for guests to text us the word lock or unlock and then have their cabin respond appropriately. So this was a huge win for me, and as a home automation, home control, enthusiast I was really happy to see this one roll out. And then I was happy to see guests actually start using it, looking at the logs and seeing people text the word lock and unlock, and then replying and saying, oh my gosh, my cabin just unlocked, that's magical. And, once again, that's really what technology at Getaway is all about, is like not just, how can we provide a basic experience and let people make a reservation, but, how can we make it a little magical for them and have that moment of, oh my gosh, I can't believe that just happened.
Zach: So it's an example of where you know that something is tech-enabled, but it empowers the guest to help themselves instead of having to run down to the front desk or hoping somebody will answer the phone line, although we're available to help them if they need it.
Zach: Another great thing about this system is that it kind of removes the barrier for non-English speakers. So we actually do have a lot of guests that English isn't their first language or they actually don't speak it at all. You can tell that because if you look at the reservations that come in some of them are actually in non-Latin characters, so I can tell English may not really be their first language if they're writing their name in a completely different one. And when they come in it's really nice for them to know, okay, I have my cabin key code, I can translate that email, see what that is, I just have to memorize this number. And then if they text unlock or lock, pretty simple words to learn and memorize, they can help themselves, they don't have to worry about calling somebody and worry about speaking the same language as them. We love all our international guests. It's really cool to have a following around the world.
Jason: Despite the fact that all these locations currently reside in the US, doesn't mean it's only American, English-as-a-first-language speakers, that are guests in these cabins. I'm sure I need not say anything about international travel and how prolific it is, and people will have their city experiences, but they would love any kind of a more rural getaway for this kind of opportunity as well if they come across it.
Zach: Exactly. And we get a lot of people that are kind of tourists, that are coming through New York City and they're going to spend two or three nights there, but then they want to actually disconnect and see something outside of the city. So we provide a pretty fun experience for that type of group. And in a lot of other countries it's seen as like a very important wellness and health thing to spend time in the forest, just among the trees, you're disconnected from technology and society.
Zach: Some people call it forest bathing, which I think is kind of a funny term, but I like it too. Basically just you and the forest and that's it, nothing else, and just examining that connection, focusing on your health and focusing on getting better as a human.
Jason: And going back to being able to SMS lock or unlock to be able to get that state in your cabin, not only have there been a lot of recent attempts to have a dumb phone to augment your smartphone or a feature phone to augment your smartphone, but feature phones generally don't have third party app support. A SMS fallback has a lot more history than the app world that we've been in for the last 11 years now, and any-
Zach: Seems like longer.
Jason: It does, but ... Well, I guess it technically is longer because the iPhone did not create apps, Jason, that's definitely something that my brain has completely overridden, hasn't it? But, yeah, certainly apps have been around for a long time. They've certainly become more ubiquitous, where the barrier to entry for people to come in and have this interactivity has become incredibly simple. SMS is a very viable medium to be able to support to increase the amount of interactivity that customers can make use of.
Zach: Yeah, we've really noticed that a lot of our customers obviously live on their phones, but SMS is a really good way to reach them. You have to be very respectful of that channel because when people get a text they kind of view it as urgent, so we really try not to send too many text messages, but we also built systems so that if somebody texts us and we haven't gotten a text from them before we're able to look them up very easily and see all their reservation information and be able to help them out as quickly as possible. That technology is another thing that runs in the background that makes it so that we can provide a really great quest experience.
Zach: That way if Jason texts me and I haven't gotten a text from him so far I can say, oh, Jason does have a booking coming up in a week, it looks like he's in the Babe house, and he's in the Catskill location, and his question is, what are the nearest grocery stores to there? Which is a question we get a lot, and I can just refer to my lost of that really quickly and get back to him as soon as possible. Our community team is always trying really hard to get back to people quickly. Obviously that's a huge thing, especially in this type of business where people are out kind of in the woods and they need answers to their questions fairly quickly or else they have to go somewhere else. So ...
Jason: So where does your tech team go from here?
Zach: So obviously there is huge potential here for Getaway, as we've seen recently, we just closed our Series B, which is really exciting. And we're really hoping to blowout the company to the rest of the country, have locations outside of a lot of major cities. So we've laid the foundation for kind of our huge growth here. We are hiring a back-end developer on the team, so if anyone out there is listening and is interested it's Ruby on Rails-focused, there's a React front-end for our e-commerce apps, but as you've heard there's a lot of other interesting technology that goes beyond a simple web application that I think a lot of people would find interesting.
Zach: There's going to be a lot of challenges as we grow and kind of scale. What I'd like to do is get to the point where even if we're on an island in the middle of nowhere in the Pacific I can still unlock the door if you're locked out. If you go to the bonfire that night and realize, oh snap, I lost my keys, you should still be able to get in touch and we should be able to help you out. But, of course, no wifi.
Zach: Speaking of that, the tech team has had a lot of good cross-team collaboration within the company. So one of our recent efforts is that we formed a committee called, The Stranded Getaway Committee, that was all about figuring out what to do with our newest outpost in Portland. There really is no cell service out there for any major carrier at all, and so the question was, of course guests are supposed to disconnect and they're supposed to not use their phones, but what if you're just lost and you can't get to the outpost? I mean, that's a huge issue.
Zach: So the question was, what information do we send out in advance? What do we encourage guests to do? How do we make sure that the guests who are going to the Portland outpost still have a great experience and are able to find things and get everything they need without a cell phone? So that included, like I said, a lot of this messaging that changed, and then also an emergency phone on the site that does have a working dial tone if you pick it up, using local cable lines, to make sure that guests can really help themselves.
Zach: So a lot of the growth at Getaway in the tech team is going to be cross-departmental and cross-collaboration kind of, and that's because we're not really a technology company. We're a hospitality company that has a bit of technology to assist us and just make it really easy for guests to have that wellness experience.
Zach: So it's really cool for us as engineers to be able to holistically look at the entire guest experience, online and offline, and engineer something to help them, even if that thing is a person helping them out at the end of the day.
Zach: Finally, I think another important thing for us is just the lock system itself, the ... Like I said, 95% of the time we're pretty good, people are getting into their cabins, but, yeah, due to slow connectivity, due to our code, due to lots of things, there's still some cases where we have trouble communicating with the house or the lock. And what I'd like to do is go from some cases to basically zero cases or have it be extremely fluky where the lock code doesn't change, and that's a big goal for us this year going into Q3 and Q4.
Jason: You folks using just enough technology to be able to let people get away from it as much as possible.
Zach: Exactly. Pretty weird, right?
Jason: Weird concept for me, but I've been a city boy all my life, so, you know ... There is something to be said for being in an open area away from this compulsive arrangement, and also being able to enjoy the location with peers that you don't already know, if you're extroverted enough for that sort of thing. And if you're not, then you have a space to call your own, and you can disconnect and have your own place to do meditation, yoga, reading, whatever-
Zach: Coloring books.
Jason: Yeah. Fiber arts, I was going to say, coloring, any sort of artistic envisioning-
Jason: ... musical practice or recording or anything else like that.
Jason: The option for all of this to exist is absolutely incredible to see.
Zach: Thanks. Yeah, or just have a campfire with your friends. Sometimes I tell people we just sell campfires. People in the city who are in apartments can't have them, and there's something really nice about sitting around a fire with everyone who's important to you-
Zach: ... and just relaxing, kicking back, talking with people, and putting your phone in a lock box.
Jason: Zach Feldman is the VP of Technology at Getaway. Thank you very much for your time.
Zach: Of course, Jason. It's been a pleasure.
A podcast brought to you by the developer advocate team at Heroku, exploring code, technology, tools, tips, and the life of the developer.
Cloud Platform Support Engineer, Heroku
Jason is a Heroku Support Engineer specializing in Platform topics, including Dynos, DNS, HTTP, SSL, and plenty more.
More episodes from Code[ish]
Robert Blumen and Marcus Blankenship
How can developers learn from catastrophic errors such as airline disasters? Learn how understanding the root causes of failure in complex systems can prevent their recurrence. →
Karan Gupta and Marcus Blankenship
How can applying the right technology choices at the right time impact your coding and business choices? Karan Gupta explains how practicing “pragmatic engineering” can have an oversized impact on business and business efficiency. →
The episode focuses on managing a certificate authority (CA) within an enterprise. The internal CA is compared on many points to PKI on the public internet. →