300 Days in:
Engineering at CallRail
Watch out for busyness. It sneaks up on you. One minute, you’re starting a new job and diving into some internally facing UI code. Next thing you know, you look in the developer chat room and other changes you made are being deployed — this time, for the call routing logic. It’s the code that drives calls for thousands of customers. The difference in scope is like day and night, and it seems to have crept up on me overnight.
Staying busy, you’ll miss other things. The other day I looked up from my monitor and realized we had tripled the number of employees since I joined.
I’m staring at code while the names fly by, blurring together the people and events. Just 300 days in, I’m even forgetting my own features. Where did those 300 days go, and what’s been keeping me busy?
Let’s get some of my early highlights down, before I forget:
Day 1: Internal Search
CallRail is a Rails shop. I hadn’t worked with Rails seriously for a year. This was a good first task to start re-familiarizing myself. Our support people would get calls, and need to quickly discover details about a phone number or name. I created a search box for them to type those into. The search results might be numbers, people, or other account-related objects. It exposed me to a bunch of our data and our code, and seemed to help support a ton.
Day 7: First Time Callers
Day 25: Incoming Business Details
You’re a company receiving phone calls. Sometimes those calls come from other companies. We wanted a quick way for CallRail users to recognize these types of calls, and look at data about that business. So, a “Business” tab was created in the real-time section of our app, which we call Copilot.
Day 51: Outbound Recording
You want to call a customer back but you don’t want to use your personal phone. You want the customer to see your company’s number as the caller ID because that’s what they originally called. We have an outbound call UI that will help you make that happen. I added a check box that lets you record that outbound call if your account admin has enabled it.
Day ??: Mario Kart
After day 51, there was a gap in highlight-worthy features. Was it because I switched to more backend-heavy work, or because Mario Kart arrived in the office around this time? We’ll never know, I guess.
Day 162: Spam Detection
It turns out phone companies deal with a ton of spam. Customers like receiving relevant phone calls, not spammy robocallers. To help them out, we integrated with a prominent spam-detection service to weed out trashy calls before they’re able to ring the phone:
Your CallRail account will automatically be configured to “challenge” robocallers and telemarketers on your “Blocked Numbers” page within each company in your account. With the settings configured to “Challenge,” anyone detected as calling from a potential spam number will hear a message asking them to press 1 before the call is connected. If the caller does not press 1 to connect, then the call will be disconnected.
Day 185: FullStory Integration
FullStory is a magical service that allows you to review website visitors’ experiences as if they were recorded on video. Imagine being a support person, and receiving a call from a frustrated website visitor. If you’re using CallRail and FullStory, you can immediately bring up their browser session:
Day 197: TADHack
Turns out an annual hackathon exists specifically for developers in the telephony industry: TADHack. We thought up an idea that’d let us test some new things out and built it in a weekend. And we won a prize:
Day 209: Self-balancing Scooters
We used our hackathon winnings to buy toys for the office.
Day 306: Upgrading Offices
Our current office is already the nicest location I’ve ever worked in. We’re located in Midtown Atlanta at the moment, and I sit near big windows that provide tons of natural light.
It’s developed a big downside, however: Lack of space. We’ve handily outgrown the current space, so we’re about to relocate to an awesome, more spacious building in Downtown Atlanta. Pretty soon, the current office is going to join the collection of things blurring by.