How a Simple Persona Identification System Transformed Complex Consumer Insights
Loading Video...
Preparing the interview
Complete interview transcript & analysis below
Enhanced transcript with interviewer insights
INTERVIEWER
People, people, uh, like to say that the simplest solution is often the best solution, right? So, there's complex problems that you have to work on in your travels as a dev, a product manager, TPM, whatever. Oftentimes, really great people, really great leaders inside of an organization could take a really complex problem and come up with a really simple solution. So, I'm curious about a time where you had a complex problem that you solved with a very simple and elegant solution.
CANDIDATE
Yeah, um, Let's see, um, I have a, I have an answer for this. I'm, I'm kind of pulling it up. Um. The One of the last projects that I worked on was called Consumer Accounts and Personas. Um, and What that was is a, a method of designing a method of, of presenting an account settings and a persona. to end users, subscribers at home. So if you've ever logged into Netflix, you see, uh, when you, when you first put your browser or your TV, it says select your, your profile. Um, I was designing a system like that for, uh, a set of services like that for customers. Um, at the same time, um, since I was working with the direct to consumer, uh, part of the company, um, there, there was a, another initiative called, um, Consumer Insights that was underway, and The, the consumer insights was basically a dashboard that our customers could go and see uh usage statistics, what, what kinds of videos their, their, uh, their, their consumers were watching, what were the genres, what were the popular videos, how long were they watching them, and so forth. Um, and, in order to keep track of Those, you know, consumer level statistics, um, the company needed a way, the insights team needed a way to track individual users, and they wanted actually to track, uh, individual personas, uh, because we had different kinds of personas, different types of personas, like, like, uh, children, or an admin, or, um, you like you could set different content ratings. And so, um, since I was designing this, this new system to, uh, to, to basically, uh, identify personas, um. It was, it was kind of a kismet. It was, it was a, it was a kind of a neat coincidence, um, that, that they were asked, that the insights team was asking me to give them a solution for identifying a persona. So, I worked with the insights team to uh design a, a method of identifying a persona and identifying an account. Um, and what they wanted was a specific type of identifier, um, inside of a, uh, an identity token, right? Like a JWT identity token. So I worked with them to, to design kind of the claims that would go inside that identity token, and then I took that back to my team, um, and I didn't have to design that part. Um, so I kind of got, I, I didn't have to design that part, and then I knew that Once I got these identity tokens straightened out and Presonus started using them during a playback experience, that our customers would immediately get the benefit of seeing their insights dashboard. So it kind of, you know, kill two birds with one stone, really simplified the whole process for me.
Interviewer Insight
candidate will need to make sure that they construct this story for this purpose a little better. The issue here is that what was asked for (the Leadership Principle in question) was looking to determine the ability for a candidate to come up with elegant solutions. This Leadership Principle is closely related to Think Big. At a company like Axon which is in the midst of a phase change in terms of business model and DNA of employees they are likely looking for candidates who can drive this transition while at the same time not overly complicating matters.
INTERVIEWER
OK. What was that? It it sounds like your process to arrive at this, this particular solution for simplicity was, was more happenstance than rather a a deliberate process to find a simple solution. Right? Is that a fair Summary
CANDIDATE
Um, I guess, I guess you could say that, yeah, yeah, more, more of a coincidence than that, um. I guess so, but it was, it was the fact that I was able to identify the um You know, the overlap, right, that enabled me to simplify my design on the consumer uh accounts and persona side, because I, I, at, at that point, I really hadn't figured out how I was going to identify a consumer accountant persona. So really, the win here was, um, you know, I was able to simplify my design, I was able to reduce the time it took me to design the identification process on the consumer side by solving it in another place first. So basically, I was able to solve it on the You know, here's, here, here's the metric side, here's what, what it's gonna look like for the customers, and I could take that design and, and simplify my process. So, so if I, if I hadn't taken the time to, um, identify the connection there, I may have designed two different systems, for example.
INTERVIEWER
OK. And so, what ultimately happened? Did you ship it all?
CANDIDATE
Yeah, sorry, I forgot the uh the art part. Yeah, so, uh, it was, it was a fantastic success. Ums viewing the insights were very happy that they, that they could see kind of the, the account level and the persona level, uh, metrics. Um, they were, they were able to, um, you know, see the number of active accounts that they had, um, and they were able to, um, kind of, uh, You know, design or not design, but um, Uh, you know, get a better sense of, of the kind, kind of content and, and the, the, the, when the customers were reviewing the content so they could understand kind of better who their customers were. That was a lousy answer. Jesus. Yes, we shipped it on time. It was a huge success.
INTERVIEWER
OK. So, in going through that process, What alternate designs or solutions did you consider, but reject?
CANDIDATE
Yeah, OK, really good question. Um, So This, this really was a win on, on the simplification side, because prior to, to learning about the insights um dashboard, I was, the approach that I was taking for getting the persona and account identities into the token was completely different. Um, There, we had an existing identity and, and token uh creation service, and my, my first thought was, you know, let's, let's add some new fields to, let's add some new claims or some new fields to the identity system. Uh, for the persona ID, for the account ID, um, and then deploy that, and we'll get the data in there, you know, when somebody signs in. Um, I came with that solution and, and talked to the, uh, the director of that team about it. He didn't like that idea. Um, not only that, but there was no, there was no team to, to implement, um, changes like that. And that's a really Uh, a really kind of high touch and sensitive service where you've got, uh, you know, literally millions and millions of consumers logging in and getting tokens. So it's kind of a, it's a really kind of a risky service to, to touch and make changes to. So, so that idea was out. Uh, the next, the next thing that I, uh, that I thought of was, well, I'll, I'll create a new service, um, that, uh, I call the session service that would, um, create a session. Um, in a database, and a session would have the persona ID, the, the account ID, um, as fields and, and, let's say a database table, a database row, and map that session to a token. So then I, I could, I could map the token to a, to a specific session, and then when I needed to extract the data, it would be there in the database. Um. Floated that idea around. Nobody liked that idea either. Nobody was, nobody was keen on creating a new service, a new faithful service that would be, you know, just as susceptible to outages, um, as the identity service. So I kind of went back to the drawing board, um, and, and I, I did a, a deep dive into how our, our tokens, um, were created. And it turned out that we had, we created two different types of tokens. We had kind of our legacy tokens that were, um, created and, and the tokens, and the information and the tokens were being stored in rows in a database. And we had also adopted JWT tokens which um were, were, were created with the same kind of user data um and, and entitlements data inside, but they weren't stored in a database. They were created, they were signed, they were encrypted uh by identity service and then they would, and, and then they would expire at a certain point. Um, and all of that's kind of how a JWT works. So I decided I would, I, I basically, I talked to my uh product manager and I said, look, we can't support legacy tokens because we can't make changes to the model, but what we can do is require that customers that are gonna use our service, use JWT tokens um exclusively, um, and, and, and then we can control the claims and things that go inside of the tokens. We can add that stuff in there at will, we can make it whatever we want. And not only, not only was that, uh, Not only did he accept that, but it, it relieved the need for us to create any new services and to add any more staple services, which was another win. Um. So we went with that model and I guess one of the downsides is that it, it limited, it kind of limited customers to a specific type of token, um, and it also required that existing customers um would have to migrate over to using JWTs, um, which wasn't that big of a deal. We didn't have a lot of customers migrating at that point. Um, but It required that we, that we create a, uh, what we call a, a direct, a new kind of hierarchical directory structure for identity providers, but came up with a solution, um, it worked, it worked actually it worked really good, um, and, you know, it was adopted, uh, easily, uh, by our first couple of customers. OK.
Interviewer Insight
decent discussion though there could have been more depth/specifics regarding the rejected options.
Expert Assessment
Interviewer assessment - would be used in a hiring meeting
The candidate used a good example to demonstrate the invention of new thing. There is a level of clarity that is required from the candidate when presenting something new. The interviewer has little to no context to the problem being addressed, how difficult it is, or the potential business impact. What did not land in this discussion is content that makes that the case that the work accomplished was impressive and impactful. Making those changes would have taken a good answer to a great one.