Podcast: Video Sales Strategies - The Bombcast!
18 October 2018
BombBomb’s Bombcast invited myself and their VP of Product to talk about our Fall 2018 releases and some of the story behind them!
I'm a technology leader in Colorado speaking about serverless computing, team building, devops, and leadership development.
18 October 2018
BombBomb’s Bombcast invited myself and their VP of Product to talk about our Fall 2018 releases and some of the story behind them!
29 June 2018
This is reblogged from my interview on BuiltIn Colorado
BombBomb’s video messaging app helps businesses drive sales and convert leads by building trust and engaging customers face to face — even when they can’t be physically present with a client. It’s a smooth, simple user experience that makes capturing, encoding and sending videos in real time seem easy.
The technology that makes all that possible, though, is far from simple.
Behind the scenes, BombBomb’s engineering team must go beyond full-stack development to create complex systems that work in the cloud, in bad connectivity and within single-digit seconds. We asked VP of Technology Patrick McDavid to dive into the details of BombBomb’s robust tech stack and explain both the opportunities and challenges he and his team face.
BombBomb makes it easy to build relationships with simple videos. This seemingly straightforward endeavor requires a lot of investment on all sides of just-in-time video delivery. We work very hard to make sure no time is wasted in our users’ workflows. We’re both transferring and transcoding video in the cloud as people are filming — not after. This allows videos to be ready for delivery within single-digit seconds of the user pressing stop.
To accomplish this, we end up having to go further than using pre-built video SDKs in the browser and mobile platforms. BombBomb has to reliably and quickly capture video streams from laptops and cell phones in sketchy network environments. This involves choosing between WebRTC solutions and lower-level H.264 byte buffers, depending on the software and network environment.
On the cloud side, we employ a serverless NodeJS and FFmpeg pairing to enable parallelized same-job encoding work. This frees us from having to maintain a standing fleet of cost-heavy encoding servers. All encoding work is treated as burst work which scales seamlessly when we hit load peaks.
Outside of video delivery, we have a PHP7 monolith from which we’ve been extracting services as needed, usually to NodeJS. We blend serverless and containerized deployment as the case requires. New major efforts are usually deployed with Node and DynamoDB and Redis in small, independent services. After a brief Angular period in 2015, we’ve standardized on ReactJS for our front-end.
We’ve had mixed success leveraging write-once-run-everywhere tools like Xamarin and hybrid mobile applications. Speed is always a major goal for us, and often we’ve struggled to get what we need out of web views on phones.
In the last couple years, we’ve gone all-in on native mobile development. This has meant some duplication of effort between our Android and iOS projects. We’ve mitigated some of this by finding useful cross-platform libraries that allow us to re-use knowledge and patterns between the platforms.
We rely heavily on our CI/CD pipelines, linting and a well-loved code review process. We also invest strongly in one another. We try to over-communicate every time; we work to level-up one another’s abilities; we host regular lunch-and-learns on patterns and technologies and book clubs on best practices to make sure everyone is well equipped for tomorrow.
Curiosity, humility, perseverance and excitement.
BombBomb’s been a very rewarding environment to work in, primarily because our software can have such a profound, positive effect on people’s lives and businesses. Despite our highly connected world, there’s an epidemic of facelessness in our online connections. Human beings have deep biological needs to be seen and heard, and to look into the eyes of another to help build trust.
Too often people are left trying to convey enthusiasm, opportunity and possibility with the written word when there’s no reason today to limit oneself that way.
BombBomb was early to the CI/CD revolution, which has always enabled us to move very quickly. One sticking point of this has been that agile sprints have felt slow to us. We’re very proud that we can deliver value to customers in very short order. We’ve successfully and enthusiastically matched our process to our continuous delivery ethos with a Kanban development methodology.
Primarily, Kanban enables BombBomb to pivot quickly without having to alter or abandon sprints. No work is promised until it is undertaken, and stakeholders can re-prioritize the backlog at any time. Team members work together to share knowledge and not over-specialize, so work becomes less coupled to particular team members.
I often ask, “What are three ways we could do this?” It’s crucial to bat the challenge around a few times before taking a crack at it. I encourage my team to whiteboard, talk, take the problem to lunch, search and read, or go for a walk. Then we need to ask ourselves, “What about this can be thrown away? Is this really the problem to solve?”
27 February 2018
This is reblogged from my post on the BombBomb Developer Blog
I wrote here a few months ago about Easy Cloudfront cache-busting with Travis-CI. I’d not really liked the solution I offered in that post and am back to share the far better solution I found this week, which is just about as easy!
11 January 2018
2017 was a year of upheaval and growth by necessity.
Our daughter, Wren, came in May. The second child is multiplicative rather than additive, for sure. Our son was two, so we’d seen a bit of parenthood, but the new effect started on day one with our son having brought a little impetigo infection to the recovery room. Ok, so our one-hour-old has to contend with the germ warfare going on at daycare from the start? That’s new.
She’s 7 months old now and wonderful. There’s a special kind of bliss seeing she and her brother being sweet to one another. We’ve found new routines, recipes and reactions that are keeping everyone fairly sane. The double-daycare-dropoff in the morning feels like a real fatherhood rite.
My wife and my relationship began around gardening. In 2012 we bought a small house with a huge yard, and proceeded to install four huge garden beds, a chicken coop, a pair of dogs, and generally fancied ourselves to be mediocre, though enthusiastic urban farmers.
With the second baby, our needs turned a little more practical, and our futures towards school districts and play dates. We toured about a dozen houses on the west side of Colorado Springs over the course of four months or so and worked Zillow like a job. Then one day we found the one, it was listed and we had an offer written on in within about eight hours. We really love it: cars in the garage, awesome great-room on the kitchen, 3/2 upstairs and another 1/1 down. Across the street from one of the biggest parks in town.
It all happened a little fast, and we haven’t officially sold our old place just yet, but it’s getting close now. I’d like to think the personal upheaval might abate through 2018, but I guess we’ll have to wait and see.
BombBomb had a phenomenal year: revenue and staff headcount both grew in the ballpark of 60% over 2016. Our new prompt tools were a breakout success and promise to be a foundational element of how we build software at BombBomb for the next few years.
2017 started with me having 16 direct reports across two teams: IT and Software Engineering. Over the course of 2017 I hired about 15 people, mostly software engineers. To make this at all sustainable, I had to graduate some exceptional engineering leads into formal team leaders.
This was the first time any of these six team leads had formally had direct reports. There was a fair bit of growing pains:
We all read through The Five Levels of Leadership to gain a baseline shared language for our first few steps into this new responsibility step. We also set up a regular lunch with that group to share stories and troubles.
I hopped out to NYC in January to attend the inaugural Hacker Connect. This event is a Real Estate technology get-together for people pushing standards and innovations in that space. I especially enjoyed the talks on Blockchain for Real Estate and AR and VR for home tours.
DVLP Denver is an awesome little conference put on by some technologists in Denver that had an eclectic mix of speakers touching on all things internet technology. The venue was especially delightful: four small art galleries in Denver’s Santa Fe arts district. BombBomb sent a contingent of four of us.
The best long-term takeaway for me was getting into the DenverDevs slack community. This is one of the best virtual professional technology communities I’ve ever encountered. There’re a number very helpful channels on specific technologies, and a playful community in general. Check it out!
Colorado Springs’ long term javascript meetup lost its organizer this year and I volunteered to take it over. We hosted two meetups in October and December: Serverless Applications and GatsbyJS. These have been going great, and I’m excited to host one every month in 2018.
I learned about the NYC CTO Summit on a Wednesday and the next Monday I was on a plane. It was a wild hair, but it worked out great! My favorite presentation was by Yvette Pasqua titled, “Tackling technical debt at scale”. We’re putting a Continuous Application Health program together at BombBomb in Q1-2018 and we’re all very excited about the prospect.
2017 was about change and growth for me. Kids, houses, and starting to become a leader of leaders added up to a lot of gnashing and learning by failure. I intend for 2018 to be more about refinement and polishing the new world I inhabit.
01 December 2017
Reblogged from developer.bombbomb.com
I’ve had the enormous fortune to lead an engineering organization comprised of women and men who delight in challenging one another every day. This camaraderie leads to better products, more creativity and a happier workplace. At BombBomb we often get to work on really cool stuff that pushes our ability and knowledge, but at the same time these tasks are often that: assigned work. It’s gotta be done, but how can we really lean to the other side and let engineers run wild?
In the spirit of freedom and innovation BombBomb held it’s first hack week in the Spring of 2015. No sprint planning, nothing assigned, just five days of developer-driven creative expression. We didn’t go in completely blind, we’d read up on Spotify’s similar tradition. So the rules were simple:
It was awesome. People played with ElasticSearch, WebSockets, and new ways to engage BombBomb staff with customers. Some of these projects were the seeds that became crucial everyday systems at BombBomb.
We knew this was a new staple: a week in spring to experiment and impress. We get the whole company together at the end of the week and show off what’s possible. We also learned to document these more thoroughly, and produced great round-ups on BombBomb Hackweek 2016 and Hackweek 2017. You should really explore those posts to get some deeper insights on some of my favorite projects, like:
Annual hack weeks are a hit, no doubt, and I’d recommend them as an innovation-rich, deep team-building exercise. You can really have them crescendo in an event for your whole company and its larger sphere. But, what happens the other 11 months of the year? On the positive side, hack week takes on a mystique, a real treat to look forward to in the spring. People link back to their presentations, or work in bits of time to polish their experiments into products. On the flip-side, we hired nearly ten new developers this year since the last hack week, so to them hack week is a little unreal yet.
We wanted a mechanism to allow our engineers to follow their passions more regularly. We read a bit: Google has their 20% time allowing about a day a week to experiment. LinkedIn has InDay where each month employees spend a day exploring themes such as: “giving back, relationships, learning, wellness and play.”
We liked a number of these approaches and so, starting September 2017, we broadened our hack culture to include a monthly Hack Day on the first Thursday of the month.
For the most part it’s been a success. With the limited time, projects have been far more prototypical than what comes out of a full week, having a little more of a what’s-possible flair. There’s a bit less planning and communication: two engineers happened to tackle speech transcription projects separately and unbeknownst to one another on the same day. Quite the surprise at demo-time the following morning. With the smaller time-box practicality is rearing its head: a pair of engineers went on a day-long documentation clean-up spree. Good, small works.
Having the single days is certainly less of an event than the week-long blow-outs, and the standing date ends up clashing with crucial deadlines. There’ve been a number of incidences of developers not being able to participate. They’re happily granted a rain-check, but something is lost. It’s not perfect. We’ll keep tinkering.
Making time for focused, professional play in the workplace is a real challenge. But I’m a believer. Deadlines are important, customers need you, and that production alarm doesn’t take a day off. We need to be flexible: in 2016, Spotify converted their Hack Week into Fix-It-Week.
Not everyone’s projects fly, sometimes people end up with just lessons. But that’s okay. We’re fortunate to have these opportunities, and an environment that’s sympathetic (if not downright enthusiastic). I’m looking forward to Hack Week 2018; the future is bright!
30 November 2017
I’ve got a goal for 2018 to attend four tech and leadership conferences. But before we make it to 2018 I was excited to happen across the 2017 NASDAQ CTO Summit a few days before it ran. I hustled a ticket and am going to represent BombBomb in the big city.
Last year I had a really good time attending the inaugural Inman Hacker Connect. Hacker Connect was (and still is) a great opportunity to meet some other tech leaders in the real estate space specifically.
Watch this space for some takeaways next week.