How Net-a-Porter scaled developer culture for their massive e-commerce platform

Here’s the scene: your company was one of the pioneers in bringing retail to the internet. Your store has millions of monthly visitors. During your massively promoted sales, you see HUGE spikes in traffic. Every sale counts. And everything is running on one giant Java application.

This story isn’t fiction, it’s Robin Glen’s job. In this interview, he tells us about how his dev team re-architected the massive designer fashion site Net-a-Porter, and the organizational changes their technology teams made to do it.


Net-a-Porter: Sometimes you need a $6,000 leather skirt!

What’s the focus of the tech team at Net-a-Porter?

So, the tech team is split into cross-functional customer focused sub teams; my team is made up of full-stack developers, test specialists, product owners, delivery managers. We’re responsible for the listing pages, product pages and site search - basically the entire product catalog. Right now our team is replatforming our architecture into micro-services and working on this concept of “headless commerce”. This allows for the entire e-commerce platform to be front-end agnostic.

How did the decision to move to “headless commerce” come about?

When Net-a-Porter was started, our e-commerce site was one big giant Java application, which is probably quite a common situation. Our delivery rate was too slow and we wanted to move towards continuous integration, but we had this big application that didn’t have great testing around. We needed to improve and evolve.

Was there a specific problem you were trying to solve?

We get a huge amount of web traffic whenever we launch a sale. There’s a massive amount of physical hardware you need to have for a short-term sale, which results in a lot of redundancy during normal times of traffic. This was obviously inefficient and a pretty big problem. We decided to break out the sales part of the site into a listing application in the cloud so we could have horizontally scalable applications to handle sale traffic.

This was a huge success and kicked off the concept of dev ops at Net-a-Porter, so developers were doing the ops and we were building full stack applications ourselves. This really opened the floodgates. As soon as the sale application was out, we began to look at every part of the site to see how we could make it scale horizontally, we are still on that journey.

How’s it going so far?

We’re still pushing towards Continuous Integration. We can do multiple releases a day. We don’t need regression testing, so we can actually move forward a lot faster. At a company of our size, innovation obviously gets a lot more expensive because you have to stay so far ahead, so all these things are helping us to keep moving forward.

Another interesting thing is the cultural shift that has occurred as a result of this change. It’s promoted a lot of ownership. Everyone in our team is able to quickly iterate and find out what’s been successful and not successful. The developers who write the applications are now also responsible for supporting them and for setting up monitoring alerts to make sure things are running.

It sounds like monitoring and alerting are pretty critical to ensure things are running. What role do performance metrics and analytics play in that process?

My colleague Matthew Green and I were tasked with answering the question “How can we make the website more performant?”. But in order to do that, we first had to answer the question “How can we measure our current performance?”. You can’t improve what you can’t measure.

So we started tracking browser performance metrics and reporting that data to Keen IO. We even extended this to collect performance metrics on client-side API calls. So now if I want to know how long it’s taking to see what’s in someone’s basket, or how long it takes to add something to the basket, we can do that.

As our experience and understanding grew, we started to add more granular metrics to help us identify and diagnose issues quickly

For example, when the website throws a 5xx error we can dive into real customer errors and I can say, “This page errors the most. In this country, that is where the problem is happening.” We use Keen to track any type of error into complete granularity. It enables us to identify errors in a customer’s experience across all parts of the site. Of course, with an e-commerce site, errors can be very expensive if you don’t diagnose and fix them quickly.

What makes my job easier is knowing: Are things working? Are they being used? If they are not, we can alert on them. We can do out-of-hours calls like, “Okay, the 500 errors have gone up. Send a text to the team,” or “The website is running slow. Send a text.”

Why did you choose Keen IO as your monitoring solution?

Keen gave me the granularity I wanted, complete control. How we use the data, visualize the data, it’s all in our control. We were doing a lot of work to get the metrics we needed, but the monitoring tools we had were not granular enough to tell us if our improvements were working. The data was not democratized. I wanted to be able to monitor anything and make it readily available.

What we’re using Keen for now is monitoring granular performance and availability, and for that it’s been perfect. We have a lot of ideas of what we want to do in the future and because of Keen’s openness it gives us is endless potential.

As an example, we tag all of our events with the build number of each application. We know how long it takes for a ticket to move through our workflow, we know how long it takes to run our build and test scripts, and now we know with how long it takes for customers to start interacting with new features. This data can give accurate development estimates to our business stakeholders.

So we can now accurately say how long a story or feature has taken from inception to real customer interaction.

What are you most excited about for the coming few months at Net-a-Porter tech?

We are market leaders in luxury fashion e-commerce and we’re on the path to making our customer experience even better. All of this re-platforming is going to unlock innovation. I want our customer experiences to feel as slick as a native app.

I’m a big believer in the web as a platform. The reason that it took off originally is because it’s frictionless. You don’t need to find a website in a store, buy it, download it, install it and launch it before you use it. I totally understand why native apps took the lead, they felt more responsive, they work offline, give you access to the device’s hardware, and overall they gave users a better mobile customer experience. This even lead some people to proclaim “the web is dead” and for a while maybe it was. Browser technology was in flux, no one could agree where mobile web was going and it stagnated, we fell behind.

This however seems to be changing. New web APIs are coming through rapidly, and thanks in part to Google’s great work, there’s no reason that we shouldn’t be able to create native-feeling apps on the web right now.

My goal is to show it’s possible to build, test, deploy, and monitor “progressive web apps” in production, at scale, for a large e-commerce websites.


Robin will be joining us in San Francisco on May 17th to dive deeper into how Net-a-Porter scaled their developer culture. If you’re interested in hearing more about their team, the infrastructure they’ve built, and their experience at Google I/O, be sure to register for our event on May 17th. Hope to see you there!

Alexa Meyer

Growth and UX. Cheese chaser. Aspiring behavioral economist.

How should deadlines be used in software engineering?

wocintech (microsoft) - 42
Photo by #WOCinTech

How many conversations have you had about deadlines where at least one person scoffed at the concept? Pfft!

I have heard this a number of times - including from myself - and I want to fix this.

The world of software is very different from the world of print media, where our current concept of deadlines is derived. However, just because there can be no universal definition of deadlines across all software projects doesn’t mean we shouldn’t use them or that they aren’t valuable.

Deadlines are extremely important for planning and parallelizing work. Without expectations about when dependent work will be completed, all teams would have to work in serial. This would drastically slow down delivery times.

At the same time, deadlines can be frustrating and counter-productive if people disagree about what they actually mean.

Problems and solutions

In my experience, these are the most pertinent problems with deadlines in engineering organizations, and the most promising ideas for how to solve them.

1) They are interpreted differently from person to person.

Person A: “The deadline is next week so I’m pulling a ton of extra hours.”

Person B: “Why? It’s a fake deadline and doesn’t matter.”

Person A: “But I don’t want to get fired!”

This shows that a deadline means vastly different things to Person A and Person B. This can lead to confusion and frustration on the team working towards that deadline.

Instead, deadlines need to be a rallying point. Everyone needs to understand why this deadline is important. They need to know what impact missing the deadline has on their world (that can be other teams, customers, or the business as a whole).

More importantly, deadlines that are met need to be celebrated. Wildly. This is often overlooked. Building a culture around celebration for meeting deadlines is a much better practice than berating people for missing them.

2) They are used too early in a project life cycle.

Person A: “Hey we need to accomplish [insert_really_hard_unknown_thing]. When can we have that done by?”

Person B: [quickly wikipedia'ing what that thing even is] “uhhhhh, I don’t know.”

Person A: “I need a timeline!”

Person B: “Thre–FOUR! mmmmo-wee-months. Four. Months.”

Person A: “Great, see you in four months.”

Asking for a deadline when EVERY aspect of a project is unknown is a recipe for disaster. It’s stressful for everyone involved and sets the project up for failure. So let’s take a deep breath. Wait a few days for some exploration to be done. We will be spending time to buy information, but then we can come up with a meaningful estimation of the work. This information will help us set deadlines that have a better chance of being accurate.

3) They aren’t updated often enough.

Person A: “Hey, deadline is in 5 days. Are we still on track?”

Person B: “We’re a little behind but yeah, we can make it.”

Person A: “Great!”

[ 4 days, 23 hours later ]

Person A: “Just checking back on that project. We good to go?”

Person B: “Uhm, no we’re not gonna make it. Something came up. It looks like another week of work.”

Person A: “$%@!*”

In this case, the deadline wasn’t moved or re-evaluated when new issues became known. Instead of raising that flag immediately, Person B waited until the deadline itself to inform others. Now Person A is affected as well AND the team gets to feel the stress of coming up on yet another deadline in the future.

Deadlines shouldn’t be set to force humans to do inhuman amounts of work. They should be used to set expectations externally and enable a sense of predictability for planning. They need to reflect reality as accurately as possible or trust is lost and they can no longer deliver that predictability. Now, I’m not advocating for changing deadlines hourly or daily. But perhaps weekly, or at the very least within a standard planning cadence.

Updating a deadline isn’t limited to extending the date. Scope reduction is also an option. Choosing which action to take (or a combination) is a conversation the engineering and product teams need to have.

4) All the “knowns” aren’t taken into account… just the fun ones.

Person A: “How long to ship this feature?”

Person B: “Two weeks.”

[ two weeks later ]

Person A: “Why isn’t this done?”

Person B: “Well, it technically IS done. Now we’re working on testing it, building a new deployment mechanism for it, and we’re gonna roll out a beta first. Also, I was on vacation last week.”

This deadline was made without a complete understanding of the work to be done, and the time to dedicate to it. (not to mention Person B also threw problem #3 into the mix.)

We need to make sure we take all known challenges into consideration when determining a deadline. Will we be losing person-hours to a known cause? Vacation? Company offsite? Birthday party which will cause missed mornings due to hangovers?

Also, what un-sexy tasks are we potentially forgetting about? How many tests are we gonna write for this? How do we get this sucker into a production environment? Slow down and think thoughtfully about your process and the availability of resources. It’ll make your deadlines much easier to deliver against AND it will make deadlines easier to defend against scrutiny.

On estimation: uncomfortable but necessary

Deadlines that are set by engineering teams will largely be informed by estimating work. That means that everyone on the team is going to have to get comfortable with being wrong. A lot. Saying anything that you know to be wrong and have little confidence in can be a very difficult thing to do.

We need to have a collective understanding that it’s our best guess and that we’ll get better at it over time. Estimation is a skill that gets better with repeated use. In the early stages, it’s going to feel uncomfortable, but we need to do it.

Estimating tasks

Before we can define the delivery date of a large project, we should break the project down into tasks, where tasks are defined as things we believe we can accomplish in roughly 5 workdays or less.

Some helpful questions to ask when estimating a task:

  • Is the project green field or in a pre-existing area?
  • What is the quality of code in that area?
  • How well do I know the area of code?
  • How familiar am I with the programming languages involved?
  • What touchpoints or integration points with other pieces of code are there?
  • How good is existing test coverage?
  • Does this work touch any business-critical areas? (write path, billing, load balancers, signups)
  • Has anyone done this work before? What are their thoughts?
  • What are the tradeoffs I am making?
  • What is the objective of this task?
  • Does this task need to be done at all?

Estimating projects

Projects are typically defined as a larger body of work that multiple people can work on in parallel.

Some helpful questions to ask when estimating a project:

  • How much time will we actually be dedicating to working on it?
  • What is the objective of the project?
  • Do we have any known days off?
  • What are ALL the tasks required to be done?
  • Do we have any blocking dependencies on other teams?
  • Are any tasks blocking other tasks in the project?
  • Is any new infrastructure/hardware required for this project?
  • What are the Doneness Criteria for this project?

Doneness criteria

Even knowing when something is done is difficult. Different roles within the team can have different perspectives on “done” so we need to have specific criteria that can determine what that means for the project.

Some examples of typical Doneness Criteria:

  • Deployed in production
  • Tests fully automated
  • Communicated internally or externally
  • Spent a certain amount of time in an internal or external pilot
  • Documentation in production
  • Education of sales or marketing team complete
  • Landing page launched
  • Analytics and tracking
  • Operational runbook and observability

Conclusion

Deliverability is essential to any company as it grows and matures. Deadlines are a major tool in the toolbelt. When used properly, they are incredibly useful. But it takes time and practice to get better at using deadlines. So, I suggest that engineering organizations treat them as alive and breathing, continue to learn about them, and document shared experiences internally and with the engineering community.

If you have any tips or suggestions on using deadlines effectively, we’d love to hear them. You can drop me a line at ryan@keen.io or ping us on Slack

Subscribe to stay up to date on future software engineering posts (no spam, ever):

Ryan Spraetz

Problem Solver — in business, coding, building, and bouldering.

OSSAT Recap!

The 3rd annual Open Source Show and Tell is a wrap, and we had such a good time.

image

We kicked off the day with Mathias wowed us with the power of F#, .NET, and Visual Studio Code via some live coding, the demo gods were friendly on this day.

Ian Eyeberg gave us a thorough introduction with some good #jokes on the Emerging Unikernel Ecosystem.

Francesc, of Google fame, talked through a brief history of Open Source with some interesting behind the scenes details and an overview of how Google supports and uses OSS.

Nadia gave a stellar talk on the importance of creating a contributing template and shared this super useful guide for all to use.

There were lots of other excellent talks about things like the first ever open source voting platform and hacking PostgressSQL do to advanced data parsing, which is pretty handy if you don’t want to hang out in RegEx land all the time. Check out the rest of the topics here.

Big thanks to Beth and Microsoft for co-organizing and hosting. Stay tuned; we will be posting videos of the talks shortly.

Justin Johnson

community guy, hacker, music nut. i like to help people build stuff.

Product Spotlight: Keen IO Analytics for Apple TV and tvOS

The digital media industry is marked by regular change and reinvention. As platforms change in popularity and power, companies must invest in new distribution channels to grow and engage audiences. At Keen IO, we support our customers by staying ahead of these trends and ensuring our cloud analytics platform is tuned to deliver unique capabilities and insights that are contextually relevant to each new major channel.

In this product spotlight, we focus on our solution for Apple TV and tvOS.

When a media company embraces a new distribution channel, the investment is often significant while the ROI is uncertain because the tools to manage performance are new and unproven. More simply, employing generic analytics tools is like flying a plane without computer-guided instrumentation. How can you effectively measure mobile in-app user events if you are using a tool that was designed to track pageviews? Some developers creatively hack a stopgap solution, but there is a better way.

Here at Keen, we intentionally built our platform to collect and deeply analyze data from anything connected to the internet. Media companies love that, and they have a word for it: omnichannel. It is this omnichannel architecture that enabled our customers to rapidly adopt tvOS analytics, just as in the past customers used Keen to power analytics in new data environments like the Pebble smartwatch, TI microcontrollers, and the NASA Mars rover.

As a case study of our Apple TV analytics solution, we interviewed Keen customer AJ+, Al Jazeera’s digital-only division. For AJ+, Apple TV represented a major opportunity to capture market share and grow audience, provided the company can analyze sentiment and engagement in the new channel.

With a mobile integration already in place, AJ+ was able to immediately add event tracking to their tvOS app and start analyzing user behavior on Apple TV at launch. As with all Keen integrations, the tvOS integration provided real-time insights that informed AJ+’s production decisions and gave them a leg up over the other media companies in the Apple TV app store, boosting engagement by 133%.

“With Keen, we didn’t need to wait around for a tool to create a specific SDK or launch support for an emerging platform like tvOS,” said AJ+ Platforms Manager Alberto Naranjo. “After an extensive vetting and selection process, we found that Keen is currently the only solution capable of providing the custom insights we needed without forcing us to build our own analytics infrastructure. Keen saves us a ton of time and helps us make data-informed production decisions with real-time information.”

To learn more about Keen IO Analytics for Apple TV and tvOS please contact us to schedule a demo.

Alexa Meyer

Growth and UX. Cheese chaser. Aspiring behavioral economist.

4 DataEngConf talks we’re most excited about

DataEngConf SF is around the corner and we can’t wait! The Data Engineering and Data Science communities have really been taking off over the last few years as companies look to build self-serve data tools and extract real-time insights from the massive amount of data at their fingertips.

Here are 4 of the talks we’re really excited about:

  • Bridging the Gap Between Data Engineering and Data Science - Josh Wills, Director of Data Engineering, Slack

We’re excited to hear Josh talk about these important and interdependent functions. There is still a great deal of misunderstanding about the boundaries between the roles and the different constraints that each is operating under.

  • Beginning with Ourselves: Using Data Science to Improve Diversity at Airbnb - Elena Grewal, Data Science Manager, Airbnb

Airbnb used data to change the composition of their team from 15% women to 30%, all while maintaining high employee satisfaction scores across the team. Diversity and inclusivity is important to us at Keen, and we’re thrilled to see a company like Airbnb leading the charge in using data for good.

  • Running Thousands of Ride Simulations at Scale - Saurabh Bajaj, Tech Lead, Data Platform, Lyft

How does Lyft power features like Lyft Line and driver dispatch so effortlessly? Luckily, Lyft has tons of data they can rely on to run simulations at scale to ensure the rider has a seamless experience every time.

  • Unifying Real-Time and Historical Analytics at Scale Using the Lambda Architecture - Peter Nachbaur, Platform Architect, Keen IO

We’re excited that Peter will be talking about how we’ve scaled our analytics platform at Keen to process trillions of events per day for thousands of customers. He’ll share how we’ve evolved our custom query engine to unify real-time and historical analytics at scale using Cassandra, Apache Storm, and the Lambda Architecture.

You can check out check out all of the talks here.

If you want to hang out at DataEngConf with us, you can register for 20% off with the code “KEEN20X”. Hope to see you there!

Alexa Meyer

Growth and UX. Cheese chaser. Aspiring behavioral economist.

Why we go crazy for data we love

Have you ever obsessively refreshed a dashboard to check your favorite stats? Fitness, finance, travel, sports, politics, gaming, trending cat-memes, whatever…

I’m guessing the answer is: Of course. Who hasn’t? I’m doing it in another tab right now!

At Keen, we talk about the business value of data all the time. For teams, customers, companies, decision-makers. Numbers make everyone smarter. Charts and graphs = insights! And that’s true, definitely. But I think there’s another piece of the data story, and this is it: people just love their data. They’re into it.

Why?

Maybe I should warn you that I’m trained as an English teacher, not a data scientist. But I believe the real reason people go crazy for data is because it’s a concrete manifestation of an abstract desire.

Okay, I know, you think I’m your crazy English teacher from junior year, but hear me out on this.

What are things that people want?

Success and Mastery: This one is obvious. All those Key Performance Indicators for company and personal growth. Users subscribed. Miles run. Levels upped. Retirement dollars saved. Success is a feeling but a bar chart is a rectangle, and a rectangle is real!

Love and Belonging: Love may be the most complex human emotion, but stats on Tinder are surprisingly precise. A friend recently showed me his dashboard and said he now knows, with mathematical certainty, what his type is (and whose type he is).

Significance and Impact: Who hasn’t watched the counter tick up and up on how many people like the picture of your child, or dog, or spouse, or brisket? How many re-tweets you got when you came up with just the right witticism about that thing that happened?

When it’s done right, data taps into some serious emotion.

So we’ve decided to share some of the data we love, why we love it, and what we can learn from it. To kick things off, here are the top two data obsessions on my list.

Data Obsession #1: Flightdiary.net

I love to travel. To be more specific, I love to rack up frequent flyer miles in creative ways and see how far they can take me. And I mean I want to see it!

That’s why I flipped when I found Flightdiary.net. It is an aviation geek’s dream. I enter my flights and then they get visually represented on a map of the world.

Colors represent how often I’ve flown a route: yellow for once, red for twice, purple or purpler for three or more, white for flights yet to be flown.

Why do I love this? Because, as Tears for Fears sang in the 1980’s, everybody wants to rule the world. It used to be you needed an armada for that. Now I can just admire my colorful lines on this map and suddenly I am an explorer of continents, discoverer of destinations.

But what if I want to know more?

Of course I want to know more, and that’s why I can look at graphs of my top routes, longest routes, flights by airline, by aircraft, by seat location.

What’s in it for Flightdiary?

Sometimes I ask myself this. Mostly I ask because I want to make sure they survive so I can keep building my empire. And they don’t charge me any money for it, so what’s the deal?

Honestly, I don’t know. But I speculate that they are working to get me hooked, and then in the future they will use the data to show me ads or send targeted offers based on all the stuff they know about where I like to go.

That’s just a guess. But I wouldn’t mind, because they’re not just using my data for their own purposes. They’re letting me get value out of my data, too. In this case, the value is emotional, but what’s better than that? I like emotions.

Data Obsession #2: Querytracker.net

Like many English teachers and copywriters, I harbor an ambition to publish a book someday. And I have learned from past experience that writing the book is not the hardest part of the bargain. The most challenging part is getting an agent.

It sounds so Hollywood: getting an agent. Like something that happens by magic. But I don’t want to stake my dreams on magic. Dreams are dreamy enough as it is. I want to invest in data.

That’s where Querytracker.net comes in. This website maintains a database of all known literary agents. I can sort by genres they represent, whether they’re open to new clients, where they’re located, etc. I can save my favorites, keep track of all my queries and log the responses.

That’s amazing, and it’s all free!

But what if there’s a premium membership with even more data?

Well gee whiz, am I going to skimp on my dream? No way! I ponied up my 25 bucks like they were on fire. And here’s some of the stuff I got for it.

Data Timeline This feature shows me all the data points (without user info) of other members who have queried a particular agent. So if an agent hasn’t responded to a single soul since 2013, I know to save my heartache for another day.

By contrast, if a particular agent seems to be lightning quick with rejections but more reflective about requests for pages, then I know the data is giving me permission to be hopeful about a slow reply.

Premium Reports With these velvet-rope reports, I can see things like Submission Replies broken down by whether there was no response, a rejection, a full or partial manuscript requested, all the way up to the ultimate response: an offer of representation.

Learning from Data We Love

It’s only natural to analyze the value of data in purely numeric ways. Of course you should consider the numbers. And showing customers their data can absolutely pay off in very measurable ways: higher signups, referrals, advertising revenue, premium feature upgrades, and more.

But I think there’s a meta side to the whole analytics equation. By measuring and quantifying things your customers care about, you can get intangible benefits as a happy side bonus. Things like: loyalty, enthusiasm, buzz, excitement that might make them write blog posts about you (note: Flightdiary and Querytracker have no affiliation to me or to Keen - I just think they’re awesome.) As Nir Eyal puts it, you can use data to get your customers “hooked” on your product.

Do you want to use data to enhance customer love?

It’s actually pretty easy to build analytics into your app, site, game, or device so you can show customers the data they care most about. In fact, Bluecore built a customer-facing dashboard in less than 24 hours!

If you want to know more, you can check out our guide on building customer-facing analytics or drop us a line at team@keen.io

And if you have some data you love that you’d like to share on our blog, let us know. or ping us on Slack.

Kevin Wofsy

Teacher, traveler, storyteller

Keen welcomes Will O’Brien as COO!

We’re thrilled to announce that Will O’Brien will be joining Keen IO as chief operating officer! He’ll be focused on driving operational excellence and financial performance as we continue to meet the rising demand for our analytics platform and build out exciting new solutions for our Keen Pro customers.

Before Keen, Will was instrumental in helping high-growth technology companies achieve tremendous success. He most recently held executive leadership roles at BitGo, Big Fish Games, and TrialPay, helping these companies scale during periods of rapid growth. We’re super excited to have Will’s operating experience, values, and strategic vision as an asset on our growing team. (ps. we’re hiring!)

Beyond being an awesome addition to our executive team, Will possesses many talents that he was willing to share with us in his first couple weeks. Here’s Will serenading our entire office with an Eric Clapton cover during our Monday All Hands. Thanks, Will! Welcome to the team!

You can see the full press release announcing Will’s hiring below:

Keen IO, a leader in cloud analytics, today announced that it hired Will O’Brien as chief operating officer. O’Brien is a seasoned technology executive with a proven track record of scaling organizations, managing corporate financings, and structuring strategic partnerships. O’Brien joins Keen at a pivotal time to help the company meet the rising demand for its real-time, scalable, and extensible analytics platform.

“I am delighted to welcome Will O’Brien as COO of Keen IO. He is an extremely accomplished business executive who knows first-hand how big the opportunity is for cloud analytics,” said Keen founder and CEO, Kyle Wild. “Will’s operating experience, values, and strategic vision will be a tremendous asset to Keen during this time of rapid growth and expansion.”

“I am thrilled to join Keen IO as the company continues to define the future of the analytics industry,” said Will O’Brien. “Keen’s flexible and intuitive platform enables customers of all sizes to collect, enrich, and analyze custom event data at an unprecedented scale. Customers are flocking to Keen as they recognize it is no longer competitive to build analytics tools in-house or rely on the ‘one-size-fits-none’ dashboards that exemplified the first stage of digital business intelligence. They are using Keen’s platform to make decisions with real business impact and ROI.”

Last year, Keen expanded beyond its self-service analytics API and launched Keen Pro, an enterprise platform with flexible data models, embedded analytics, and support for large data volumes. As part of ongoing account management, Keen Pro customers also get hands-on expert advice from Keen’s engineers and data scientists to ensure their integration with Keen’s API is tuned for performance and delivers the desired results. The company has experienced tremendous customer growth and the Keen platform has been integrated across a wide range of categories, including mobile, gaming, e-commerce, media, IoT and retail.

As COO of Keen, O’Brien is tasked with driving operational excellence and financial performance. O’Brien arrives with a wealth of experience in building and running high growth technology firms including recent executive roles as CEO of BitGo, SVP at Big Fish Games (acquired for $885 million by Churchill Downs, NASDAQ:CHDN), and GM at TrialPay (acquired by Visa, NSYE:V). His angel investment and advisory portfolio includes more than 50 companies in a broad range of sectors including fintech, blockchain, gaming, media, healthtech and cloud services. O’Brien holds a B.A. in Computer Science from Harvard University and an MBA from MIT Sloan School of Management.

Alexa Meyer

Growth and UX. Cheese chaser. Aspiring behavioral economist.

How values help you scale and maintain your company culture

Last week, we posted the Mission and Values we developed in a company-wide exercise at Keen IO. In this post, I’ll explore the thinking behind why we felt this was a useful exercise to support our organization’s growth. And what we are doing to make sure our values are more than just words on a wall.

The link between values and company culture

Culture is often written about as some magical secret sauce that can make or break organizational performance. Some people buy this and some don’t. Keen is in the culture-is-important camp. We see culture as a key element of everything we do, from employee engagement to innovation, productivity, brand, team performance, customer satisfaction, and more.

In my role on the People Team, and as a byproduct of three psychology degrees, I don’t view culture as an unpredictable spinoff that magically occurs when you put a bunch of awesome people in a room together (although we do love bringing together magically awesome people on a regular basis).

Instead, I think of culture as an output of the behaviors, structures, processes, reward systems, philosophies, and group norms that are executed day after day within an organization. And these behaviors are not random. They are driven, intentionally or not, by values.

Mission and Values are sometimes overlooked. And indeed, in many organizations, they are toothless statements: espoused declarations printed on a wall somewhere or referenced in an employee handbook, but not truly representative of how the organization actually behaves.

The tricky thing about values is that they are most honestly communicated by behavior, but they also drive behavior. A manager who speaks all day long about empowering her employees but overrules all of their decisions is embodying what value? Most of us would come up with a phrase based on her actions, not her words.

So why bother writing values down at all?

If culture is a complex set of behaviors and beliefs, isn’t it best shared through role modeling? Yes, it is! And this is how culture is most often grown, by the sharing of tribal knowledge in organizations: implicit behavior inadvertently communicated to new hires, emulated, and replicated.

Values are especially crucial when employees are faced with a choice: competition or cooperation? perfection or iteration? speed or quality? knowledge sharing or knowledge protection?

Workers are faced with these choice points everyday. In a slow-growing organization a new hire only has to wait for the next team meeting to observe and absorb the behaviors which communicate the underlying values. Does a team leader encourage discussion and ideation or does she solicit efficiency and expertise? Very quickly new employees learn whether or not it is culturally appropriate to shout out ideas or wait until they have a fully formulated proposal.

But what happens when teams are growing at a pace where there are more new hires than company veterans?

This is the moment when a company culture can easily start to morph. And it’s why there are so many panel discussions on the topic of how to scale culture in startups. During times of high growth, in the absence of group norms to emulate, the team will quickly establish new ones. Perhaps this turns out very well or perhaps the company founders are left feeling like they are holding the reins on a pack of wild horses.

For this reason, creating explicit values statements is particularly useful to a company that is scaling faster than the pace at which tribal knowledge can be shared, especially if the company has a culture it cares about retaining.

As an organization grows and new territory is navigated, values provide direction in new, unknown situations. Values establish foundational behavior markers. They also help employees evaluate whether they are interested in helping contribute to what the company is trying to achieve in the world and whether their own personal development will be furthered in the process.

A mission statement answers the why and what of a company’s goals. The values inform the how. This returns us to the importance of the values being genuine indicators of company behavior and not simply words on a wall.

How can we hold ourselves accountable to our values?

As mentioned in the previous post, Keen has an advantage in that culture has been a focal point of the company since its inception. This reflective propensity is very much on Keen’s side; a values exercise can be a pointless use of time unless the leaders within your organization are demonstrating the values through their own behavior.

Given the scalability limits of role modeling, we’ve built up an array of additional supports to cultivate our values and make sure they don’t get lost in the shuffle of rapid organizational growth.

Introspection

  • Every Thursday, the company gathers for Introspection Happy Hour, where we reflect and share what we are feeling anxious and excited about. This weekly event gives people the chance to hear what is happening on other teams and to get to know their colleagues on a personal level. The New York Times just published a great article about the correlation between psychological safety and high-functioning teams that makes a strong case for practices such as this.

  • At the end of each two-week sprint, each of our engineering teams holds a retrospective 30-60 minute meeting to reflect on what worked well and what can be further improved.

  • Keen offers an executive coaching program to all of its employees. We believe all of our employees are high performers and should have equal access to self-development resources to increase their effectiveness so they can progress toward their highest potential, not just as professionals, but as humans.  

  • We teach a recurring learning lab called Managing Emotions where participants explore emotional regulation and mindfulness tools to increase self-awareness.

Continual Learning

  • In addition to the Managing Emotions learning lab, we also teach an Effective Communication workshop where participants learn non-violent communication techniques, methods for delivering feedback, conflict resolution techniques, and trust-building models.

  • Each employee receives an annual stipend to spend on any educational pursuits of their choice: books, conferences, trainings, classes - it is totally at the employee’s discretion.

  • Our blog is a forum we cultivate to share our ongoing learning - we encourage all members of the Keen team to write for the blog.

Personal Agency

  • Our value of personal agency is deeply reflected in the design of both our product and our organization. Keen’s product is highly customizable to provide developers and organizations with the broadest array of possibilities to explore their data however they like and discover the answers that matter most to them.

  • Our organization is unique in that we don’t have managers; we believe individuals should have autonomy and authority over their own domain and work style. Instead of managers, we have detailed responsibility matrices, collaboratively created by each team, so everyone knows what they are uniquely responsible for achieving. We also receive performance feedback from our peers vs. a single source of authority.

Honesty

  • Direct, effective communication requires honesty. This is something we practice in our Learning Labs, meetings, community interactions, client relationships, and board meetings.

  • We also believe in communicating honestly with our customers no matter what. If something goes wrong, we own up to it rather than trying to cover up or look for someone to blame. Everyone at Keen knows that it is always right choice to speak honestly with customers, potential customers, each other, and the community.

  • Our commitment to honesty is also reflected in our organization-wide communication habits. Each week we gather for a session of “Ask Anyone Anything” where no topic is off-limits.

Empathy

  • This is perhaps the most meta value, the one that informs the execution of the other values. As we pursue honesty, it reminds us to consider the needs, perspectives, and feelings of others as we communicate, assert our agency, and seek development for ourselves, our business, our product, and our organization.

  • The Effective Communication Learning Lab provides an environment to practice speaking honestly in cases of conflict, while simultaneously taking the other person’s feelings into account.

  • We also ensure that every Keen employee rotates through support shifts so they can better understand our customers’ needs and experiences, and feel a personal connection to our community.

These are just some of the ways we are making our values real through concrete practices.

Of course the practices would vary depending on the values of any given organization. But I hope this gives a sense of how values can be much more than a feel-good page in a handbook. When backed up by solid routines and behaviors, they can play a vital role in preserving and promoting the culture of a fast-growing organization.

As always, we’d love to hear your feedback. How are you using values within your organization? Do you have any tips or suggestions to share? And if you want to hear more about the process of how we came up with our Mission and Values, please reach out to me at lisa@keen.io

Lisa Nielsen

People developer, behavioral science enthusiast and baking diva.

Announcing Keen IO’s Mission and Values

Here at Keen we spend a lot of time thinking about culture. This habit extends as far back as Keen has existed, since we’ve always been inspired not only by a product mission, but also by the question of how to build the type of organization where people love to work.

We recently went through a company-wide exercise to take this thinking a step further and create explicit Mission and Values statements that feel real to us and uniquely Keen. We’re excited to share them now.

Mission: Turn Explorers into Discoverers

We rallied around this Mission because it encompasses how we feel about everything we’re building at Keen. On the product side, we’re building a flexible analytics platform that makes it easy for people to collect and explore their data and discover new insights about their business, products, and customers. On the company side, we’re bringing together curious, open-minded humans eager to run experiments, learn new things, and keep growing as people.

In terms of culture, the Mission also feels very Keen. It connects to our love of exploration and discovery at the grandest celestial scale, and it also hints at our more playful side, since ‘discoverers’ is, after all, a word we kind of made up.

Values

To support the Mission, we came up with a specific set of Values that have always been a part of who we are, but weren’t clearly defined until now.

Introspection

Introspection is something we practice at Keen on both an individual and organizational level. We believe in the power of curiosity, reflection, and thoughtfulness. And in the immense catalyzing force of self-awareness.

Continuous learning

Related to introspection, continuous learning guides us to continually assess ourselves, our product, our business, and our organization. We are always open to growth and discovery via access to new data, feedback, opportunities, and insights.

Personal agency

We believe individuals should have autonomy and authority over their own domain and work style. We regard all humans as capable of brilliant problem-solving, innovation, and invention. We deliberately structure our product, platform, and organization design to support this.

Honesty

Honesty begins with thoughtful introspection and extends to the way we communicate with each other and our customers. If something goes wrong, we own up to it and work together to find solutions. Through a culture of honesty, we build trust and gain the confidence to experiment with new ideas and make new discoveries.

Empathy

Empathy informs all our values, reminding us to consider the needs, perspectives, and feelings of others as we communicate honestly, assert our agency, and seek development for ourselves, our business, our product, and our organization.

We’d love to hear your feedback about our Mission and Values, as well as the role statements like these play in your organization.

And stay tuned for an upcoming post about why we think values are so important to a healthy company culture.

Lisa Nielsen

People developer, behavioral science enthusiast and baking diva.

Discover Gold with Keen IO and Popily

Popily logo

Have you ever been collecting a lot of awesome data, but you felt like it was a vast jungle of hidden gems and had no idea where to start exploring it? Popily + Keen IO are here to help.

Popily can instantly provide you tons of charts - you can pick out your favorites or ones that help you dig deeper into your data. Popily can impress your boss, team, customers, cats, and dogs. You can import data from anywhere into Popily - CSVs, databases, and more. With Keen IO, we’ve got you covered. No fancy data ninja skills are needed to import your event data from Keen IO into Popily. It’s as easy as three steps.

Find the gold in your data

Discover mind-blowing, meaningful insights in Popily. You can easily extract different data sources from Keen and other sources and merge them in Popily to get a better view into your data. Sometimes you won’t find what you are looking for right away - exploring Popily’s charts can help you dig deeper in your Keen IO data!

Popily Explore GIF

Share the gold you discover

When you find something interesting, Popily makes it super easy to communicate in a meaningful way. You can export their charts as images into PowerPoint, Excel, or embed them with a few lines of code. You can even embed them alongside your Keen IO data visualizations.

Need direct API access?

We’ve got you taken care of! You can build your own data collection and exploration engine with API access to both Keen IO and Popily. Collect and store data from users, websites, apps, and smart devices with the Keen IO API and SDKs, and then explore and visualize that data with Popily. You can see more about the Popily API on their blog and API Documentation.

Don’t miss out on loading your Keen IO data into your free Popily account today! Also, check out how exactly the Popily team sent UFO sighting data from Keen IO to Popily for a bunch of instant charts in their latest blog post.

Cat UFO GIF

Taylor Barnett

developer, community builder, and huge fan of tacos