Transcripts
1. Introduction: Hi. I'm Ellen Chisa and welcome to the fundamentals of product management on Skillshare. Right now, I'm the Director of Product Management and Design at Lola, the real human travel app. Before that, I was the product manager for the backer experience at Kickstarter, and a program manager for Office Mobile at Microsoft. I love product management, I think it's one of the best jobs you can do because you get to be involved in the entire process and it tends to be a lot of fun. Unfortunately, a lot of people never get the chance to be involved because there isn't much formal education around product management, no one majors in it in college. So this class is designed to help you if you're just getting started. You might be an entrepreneur, building something without a formal product management background, and want to make sure you avoid common pitfalls. You might be a designer or an engineer that works with a product manager regularly and wants to understand what are they really doing and how can I think that way too. Or you might be someone from a completely different field; a consultant, a lawyer and thinking, "How did management might be a good fit for me next? How could I go about getting into that?" I love teaching product management. So far, I've taught with startup Institute, General Assembly and Olin College of Engineering and I'm really excited to be teaching this class on Skillshare. So it's available to everyone.
2. Project Overview: How are we going to learn product management together? Of course, the best way to learn product management is just by doing it. Because we don't all have an entire company at our disposable to build what we want right now, we're going to do what I call a side project. A side project is one that you take on that you're passionate about for yourself, that you might do outside of your major job. We're going to work on all the deliverables together. While we each be working on something different, everyone will go from coming up with a list of ideas they might like to work on to coming up with a vision for one of those ideas and making sure it's the right scope for the class. Then, we'll build on that by creating a set of goals and non goals for what you do want to do right now, what you don't. A feature list for every detail that needs to be included and user flows and wireframes to make sure we're really thinking from the user perspective and designing something that someone would want to use. We'll close by thinking about how to actually put those things together and go about building a project, so you can ship something that you'll be proud to use yourself and show your friends.
3. What is Product Management?: Before we get started with doing our projects, I wanted to take some time to go through what is product management? Every company defines it a little bit differently and people get wrapped up in the idea of am I product manager, or am I not a product manager? The important thing to keep in mind is that product management isn't role or function, it's a set of skills. Satya Patel, one of the partners at Homebrew said this, and I really like it because that's what it is, "Product management is a set of things that have to get done no matter what. If your company doesn't have a product manager, probably they're getting picked up by an account manager and engineer or a designer or someone else in an adjacent role. The role of the product manager is really to help the right things get done." Or as Josh Elman puts it, "Hope your team and your company ship the right product to your users." The thing I love about this role in particular is the product manager gets to be involved in the entire product design process. They're there from the original crystallization of an idea all the way through the day you ship the product, and then finally the times when you iterate on the product or decide to start something new and kill off the old feature. It's really a great role if you're interested in being there the entire time. Since product management is a set of skills, I like to break those skills up into three buckets, technology, design, and business. A common fallacy is the product managers are equally balanced in all three areas. That they're pretty good at technology, pretty good at design, and pretty good at business. This makes people feel insecure when they're trying to get into the field because they know they don't have that balance. That really isn't usually the case. For instance, some product managers come in much stronger in business. They may have gone through an MBA program or they may have started out in marketing and shifted over. They know a lot about how to acquire users and the cost of acquisition for those users, and also about the eventual revenue and lifetime value that they'll generate. When I started as a product manager, I was definitely not that person. I knew barely anything about how to make money and said I was very heavily focused on building the right thing for the user, the design skill set of product management, and a little bit about how to implement it, the technology side. When you're getting started, you probably do have some skills in one of these areas already, and you should rely on those to help propel you further in the field. To go into a little bit more detail about each of the areas, we're going to be learning things from each of the three disciplines. We're going to, from the business side, talk a lot about requirements and how to decide which part of the software you're going to build. A few other skills that go into this bucket that we won't be addressing are account management. Account management is the discipline that helps work with clients, especially in a B2B company where you're selling to other businesses. We won't be doing funnel analysis. Funnel Analysis is the idea of from the first time a user hears about your company until the day they actually buy something from you, what is the process they go along? How do you keep people in that funnel making sure they eventually end up buying? If you are interested in this, Dave McClure has a great talk AARRR Pirate metrics about acquisition, activation, retention, referral, and revenue. Moving on from there, business focused product managers do a lot of revenue analysis. Because we're working on a side project, there's probably for us and not necessarily designed to generate income right away, we won't be going there and we also won't be spending much time on marketing. We'll spend more time in the design area. We're going to spend some time thinking about scenarios, which is what users are using their products for. Sketches, which is a visual way to communicate rather than writing everything down in long form and mockups, which aren't quite the mockups you would see from a designer that are pixel-perfect in Photoshop, but are the mockups you see from a product manager that help explain how to communicate. We won't be spending much time on user interviews or personas, but those are two other tools that are very much from the design discipline that product managers sometimes use. Then finally from the technology side, we'll definitely be talking about prioritization and how to think about each incremental amount of work that you're going to need to do in order to build your product. From that side, we'll think a little bit about project management and how to get things done. We won't be touching on other things product manager sometimes due to technology such as making their own code changes to save time. For instance, copy changes are a great way for a product manager to get involved in the codebase. While many product managers spend a significant amount of time on data analysis or AB testing, we won't be thinking about that because we're really focused on just getting the project off the ground. So with that, those are the sets of skills that product managers use on a regular basis and now we're going to work on applying them.
4. Coming up with (good) ideas: Great. So let's jump right in. The first thing you need to do as side project is your idea. So maybe you're the sort of person who already has tons of ideas and you're completely ready to go. You might want to cut ahead to the next video. But if you're like me and you're thinking, oh, no, this is the worst part, I never have any ideas I want to build, I wish someone would tell me what to do, stay with us for a few minutes and we'll explore how to do that. So for me, the turning point was in college. I took a class, and on the first day, the professor came in and decided to talk about his personal work process instead of about the topic we were supposed to be learning. He brought in a stack of 20 notebooks that showcased his work from his PhD on and all of the ideas he'd had. That was the day I started carrying my own notebook around. I still do this. I usually have a couple with me almost all the time. What I do is I just write down anything that inspires me. It might be something that someone says at a conference, it might be from a coffee date with someone, where they come up with a cool idea. I just started to generate a lot more content and keep it around so I could flip back through and see what inspired me. The more times an idea comes up, the more likely I am to work on it. With Wallace, the cheese app, it was the thing where every time there was cheese I thought, oh man, I really wish I'd finished that cheese up by now, and so I decided to work on that as a side project. So the best thing you would do right now if you don't have that idea yet is set aside this Skillshare class for a little bit, if you have the time, and start to write down your ideas. Write down things that happen to you, write down anything that was painful in your life, write down any product you love, and just start to see which things stick with you over time.
5. Project example: Wallace: As we go through the class, I'll be working on my own side project along with you. A couple of years ago, I noticed that my friends who are really into craft beer or really into certain vintages of wine, had apps on their phone that let them keep track of what they were drinking, what they were trying, what they liked, and to discover new things. Well, I like beer and wine, I'm not quite that discerning about those. But I do happen to really like cheese. So I started researching this space. I figured out that there was a product that was supposed to do what I wanted. They're these paper cheese journals. This one's called 33 Pieces of Cheese. They enable you to be able to write down the cheese you tried and come up with a flavor profile and keep track of what you've done. Unfortunately, I never had the paper cheese journal with me when I went somewhere. You don't carry it everywhere because it's not practical on a day-to-day basis, which means the day you do go to the restaurant where the awesome cheese is played is never the day you have the cheese journal. So I decided to work alongside you on an app that I call Wallace that's all about cheese tracking and discovery.
6. Scoping your project: Now, that you have a list of ideas organized however you want to, here's an example of how I organized mine. I created a column for websites and apps. So basically, anything I want to work on this technology based. I created another column for art that talks about any art projects I wanted to do. Then I have another column for things I'm actively working on. So by generating this full list, you now have a big set of things that you can draw from. Of course, you probably have one that's gravitating towards the top for me as I've mentioned, that's Wallace. It's the one that keeps coming up as you're thinking about these things. So now that you have this list, before we commence with this lesson, just pick one of those things to focus on. Got one? So the concept we're going to talk about for that is the idea of the minimum viable product, or the smallest thing you could possibly make out of the idea that you just selected. So let's say the thing that you selected was a wedding cake. That's probably not what you're going to work on for this class, but it's something that we can use it as a very clear example. So this wedding cake is huge. It takes up almost this entire table. It has three layers, it has fondant, it has ganache, and has this cascade of chocolate covered strawberries coming down the side. It's a pretty complicated and elaborate cake. If I wanted to start making this cake from scratch, I would have to do it in stages. The first thing I would make would be this base level of the cake. This base level, it doesn't really look very appetizing. It's just one thing. If I wanted to make the entire cake, I would probably have to spend at least one more day on this because you can only bake one layer at a time because they're so large. You have to create all of the ingredients from scratch and then you have to spend all of the time painstakingly putting each strawberry on. Now, it would be really disappointing if at the end of that process, it turned out the wedding cake wasn't actually what I envisioned and it wasn't any good. So what's the way I could go about making something smaller that would be satisfying and explain to me what the end concept would be like without having to make an entire wedding cake? Well, I could make a cupcake. I could make a chocolate cupcake, filled with the same type of filling, covered in the same type of ganache, and with a strawberry on top. Well it doesn't have the dramatic effect of the wedding cake. It contains all of the key elements, and I would be able to try out each piece of the experience together before I committed to spending multiple days making this gorgeous cake. Of course, cakes are one example, but this is also how software projects work. If cakes aren't the example that works for you, I like to use this chart that explains minimum viable product. If you'd only built that base layer of the cake, that would be like the equivalent of building only a tiny bit of functionality for your application. That's not really what you're going for. What you want to be building instead is something that takes you from a basic level of functionality all the way through an emotional commitment. If you think about this, it's not just about cakes, you can apply the same concept to software. When I think about Wallace, I could build an application that simply lets me add things to a list. If I were to do that, it would be functional, but it wouldn't really be fulfilling the entire vision of Wallace. It wouldn't have much to do with cheese lovers and it wouldn't have that emotional appeal of being, this is the app for people who really care about cheese and are connoisseurs in this particular category. You want to make sure that instead of building a base level of functionality, you're building something that delivers a little bit of the entire promise or a little bit of that wedding cake, so you can try it out before you do all the work to build everything. Start to think about how to scope your project down such that you're making the smallest possible element. To that, one tool you can use is to start to come up with a vision statement. Your vision is really the essence of your project. It's the thing you come back to time and time again. It's when you're at a cocktail party and someone says, what are you working on? You can say, I'm working on Wallace, the app for cheese lovers. They'll know exactly what you mean and have a good idea of what direction you're going in. You can also think of the vision as being the positioning statement, or what you would use to explain how your product is different than what someone else is building. This should really be the essence of everything you work on from here on out. Once you have that vision down and you're happy with the census you wrote, that's the time to think about goals and non-goals. The reason I specifically call out non-goals, it's very tempting to throw everything and the kitchen sink into your project. You don't want to eliminate anything because you don't know exactly what's going to work yet. It's tempting, but it's dangerous. Instead, you should decide what you're going to focus on and also decide what you're not going to focus on. So for Wallace, my three goals are to make cheese journaling more accessible. It was frustrating to me when I didn't have my cheese journal with me when I needed it, and Wallace will make it there all the time. My second goal is to share cheeses with other cheese lovers. This is about people who really care about cheese and keeping track of it. So there should be some way for that to happen. Then my third goal, and this is important to me personally, is to be able to discover new cheese that I'll like based on things that have had. There are things I'm not going to do right now. So for instance, I'm not interested in pairing cheese with other items. The reason for this is because this product is for cheese lovers and them focusing on cheese. It's not about solving everything for everyone, and it wouldn't necessarily make sense to make a wine app. There already is a wine app. My second non-goal is to not allow cheese purchases. Right now this app is about the experience of having cheese, but it's not necessarily a shopping experience and that would be logistically complicated and isn't in scope for right now. So now, take the time to stop the class, sit down, and create your own vision for your project. Figure out what your goals are that you are going to achieve and what is out of scope for right now. Put that into a document and then upload that to the class projects page.
7. Creating a feature list: Now that you have the vision of what you're going to build, we get to do the fun part, which is writing down everything you could possibly do, and then prioritizing it. But writing everything down is the fun part. I'm going to start the e-mail at Wallace, and start brainstorming my feature list, and let you watch me do it in real time. The first thing I'm really excited about building is a way for me to discover new cheese. I'm also excited about having a better way to suggest new cheese to my friends because right now, they just asked me for recommendations all the time. I'm not always sure what to tell them, and I don't have the documentation. I can't remember what I told them in the past. I'm curious about if I can find a location to buy a cheese. I know I said that was a non-goal before, but it might be interesting. I might want to upload photos of cheese. I've seen in recipe apps a bunch of times that people are able to upload photos of the dishes they made, and maybe that would work with cheeses, or upload cheese plate photos as well. I could also think about I might want to edit cheeses once I've added them. If there's something I'm changing, or modifying, or you know what, I didn't even write down add cheese yet, and that's probably one of the most important features. I might want to be able to sort or filter based on different characteristics. Cheeses have a bunch of different characteristics, texture, type of cheese, type of milk. Then I might want to be able to delete a cheese or remove it from a list. Maybe I got food poisoning, I don't know. I'm not quite sure about that feature yet, but it seems like the sort of thing I should add for completeness. I like the idea of timehop for cheese, going to be able to act, and being able to say, "What did I eat for Christmas last year?" or the idea of creating cheese plate plans or inspiration. Then finally, I know I said it was a non-goal, but I'm going to put this buy cheese through app thing on here because I can do that. Now that I have this list, I think this is a good enough set to start to prioritize. When we think about this, I think add cheese is the most important thing. I said that our goal was to mimic a cheese journal, and the most important part of the cheese journal is being able to add cheese. Other than add, I think simple edits are probably going to be important. I could get a lot deeper into this feature. I could want to have multiple versions of the same cheese based on say, who the affineur, which is the person who ages cheeses. But I think it's probably edit cheeses in a simple manner to start with which is just, I ate this cheese. I forgot to say it was [inaudible] already, and I want to go back and have that flavor profile. I think also as long as we're doing edit, delete is going to come along relatively for free, so we'll put that up here. You can see, I'm getting pretty specific when I talk about what I'm doing. When I say edit cheese, I'm specifying that it's simple edits of cheese. The reason for that is because you're thinking about the technical work required to build each thing. A lot of people might just put login on a feature list. If you put login on a feature list, it's not specific enough. There's a bunch of different types of login. If say, you decided you wanted to have login via GitHub, login via LinkedIn, login via Twitter, login via Facebook, login using your e-mail address, each of those is another set of work that an engineer would have to do. You'd be much better off specify login using Facebook Connect. Let's see. Now that I have these first three things, I'm going to turn this into a numerical list to show that it's been prioritized. I think, right now, this is where I could draw my cut line. I think these first three things are really what I have to have to ship an app that cheese lovers will feel emotionally connected with and know that it less the mimic the behavior of paper cheese journal. If I think about these other things, I can also prioritize them, but I'm probably not going to build them right now. I would think of this in terms of, let's see here. I might want to have additional editing features. For instance, for multiple affineurs, as mentioned before. I think discover new cheese is also pretty important, but it's probably actually easier to sort and filter. I think search would also be something that would be helpful because if you start to add a lot of cheeses, that would be important. As you can see, this is an iterative process. I'm going back and forth in deciding which things to add to my list. I think this is a pretty decent prioritization of the order of the cheese features for right now. Obviously, you're going to have more time to sit and think about this. But I just wanted to give you a quick idea of how you can go through the process and thinking about the trade-offs between two sets of features. As mentioned, I think the first version of the cheese app really only needs three features; being able to add cheeses, being able to do simple edits of cheese, and being able to delete cheeses I no longer want in my list. This isn't actually enough level of detail to go about building a product. This is where you start to add a level of new nuance to your feature list. When I say add cheese, I actually have to think of each attribute I want to add to the cheese. There's a set of base attributes. In my case, this would be the name of the cheese, the creamery the cheese came from, the affineur that age to the cheese, the origin, so which country, for instance, what type of rind do the cheese has, the date, and the price that I paid for the cheese. Of course, you can also get into other elements. What I mentioned before is milk type. I could have a set of milk types available, textures, and flavors. I think one thing I would also like to add to this for my personal usage is the idea of having a rating. A rating could end up being a more complicated feature. For instance, letting you rank cheese for other people to discover. But for right now, I could just have it be a 1-5 attribute that's available to only a person who uses this application for themselves. I can also think about how I want these things to be done. The base attributes are all open text fields because these are things that people are going to need to fill in based on what they've done. The milk type is probably mutually exclusive. You do occasionally get cheeses that are a blend of both cow and goat milk. But most of the time, it will be one type of milk, so this could be multiple choice. On the other hand, texture and flavors aren't limited to one option. You can select as many as you want. I know that when I build these, I want these to be checkbox-based items, not necessarily just multiple choice items. Then finally, I want my ratings to be 1-5 stars. Now this gives me enough information to really understand what I'm going to be building, and how I'm going to have to set up my database to plan for this cheese journal type application. Now that you've seen me sit down, and build a feature list for Wallace, start to think about what you're going to build. Review your list of goals and your vision, and then make a list of everything you might be interested in doing. Take that list and prioritize it. One of the more important parts will be deciding where to draw that cut line so you know what you're going to be designing in our next few sessions. Once you've done all of these, take your prioritized feature list with your cut line, and upload it to the class project page to get feedback from your classmates.
8. Creating a user flow: Now that you know what you want to build, we have to think about how users are actually going to use it. Some people call this scenarios, so scenarios of what a user is actually doing. For instance, Ellen's at the restaurant and wants to remember this cheese so she can have it again later. Other option is storyboards, which is basically like drawing a full comic strip of how someone's going to use your product. But we're going to use a process that I call doing a user flow or figuring out how someone's going to get into your application and then use it. Let's get started drawing one of those. The way I'm envisioning wallets right now, the first thing a user does is they launch the application. After they launched, I want them to understand a little bit more about what the product is about. I don't think most people are familiar with the concept of a cheese journal so I'm going to have some sort of intro. Once they get through that, I'm going to take them into a list of cheeses. This will be great once you've already used the application before because you'll be able to see everything. But in the case where it's the first time in the application, there won't be anything there so we should make a note to come back to that later. Then from the list of cheeses, you can tap on one to get to a individual cheese and see more information or you should be able to add a new cheese. When you're thinking about these flows, it's important to consider the platform conventions. For instance, iOS and Android both have different places. They usually have people add a new item from. Now, when I'm adding a new cheese, once I've added it, I should be able to save it and it will become a cheese item and the user will end up there. Because we said that editing was one of the first three features we wanted to build, we should also be able to go from a cheese screen back to the add screen so we're able to edit any details or add more information. As you can see right now, this is actually pretty simple flow because we scoped our application well. We only really need four things: an introduction, a list view, a cheese item view, and an add or edit view. That's pretty simple. Let's get started by trying to do that for our products right now.
9. Expanding a user flow: Now that we've done the simplest possible version of this for application, let's think about how we'd have to expand this if we added more features. For instance, say if I wanted to add cheese plates to Wallace, I would no longer just have a list of cheeses, I would also have to have a list of cheese plates. I'd be able to see all of the options when I'm planning my party. If I'm going to have a list of cheese plates, I'm going to have to have an individual cheese plate objects. I'm going to need the ability to add a cheese to a cheese plate and the ability to edit a cheese plate once I have one, of course, each of these things will be linked together. I've already added a fifth and a sixth screen with corresponding actions just by adding cheese plates; would just didn't seem like that complicated of a feature. This is why we have to be very careful with scoping things while at the beginning and really building the smallest possible iteration, so we don't get lost or overwhelmed with our user flows. Now that you've created an easy user flow and maybe tried one with a couple more features just to get practice, take some photos and upload them to the class project gallery so others can see how you're thinking about users' usage of your application.
10. Creating wireframes: As we mentioned at the beginning of class, we're going to spend some time focusing on wireframes. We now have the two elements that we'll need to start to build those. We have our user flow that we just designed so we understand how each screen fits together, and we have our list of features from before. I'm going to walk through how to build the add a cheese screen for Wallis, and then you can go through the same process when thinking about your application. The reason I like designing mobile applications is you have to maintain a little bit more focus. You only have a small amount of screen to work with, so you can't necessarily include everything, and you have to think about what belongs exactly on each screen. Before, when we had the ad screen we said that was one thing, but when I start thinking about these 25 different attributes, I want to be able to set, that might not all fit on one screen. But let's get started. I know that the name is going to be the thing at the top, because that's the primary attribute of the cheese and that's what's most important. After that, I'll probably have a little area that allows me to maintain the base attributes because those are things that people look at every time they want to set a cheese. Do the things you think about when you're purchasing. Some of the other items are the types of things where we have so many options that we probably won't be able to fit them all on this screen. For instance, we can have milk type, texture, and flavor. Especially with flavor, we have all of these different items we want to include. What we probably want to do, is have each of those go into separate screens to be able to select an item, and then once you select an item, it appears here. For instance, this is a cow milk cheese that is hard and has a salty flavor. Our last attribute is the rating, from 1-5 stars and we can keep that here at the bottom of the screen. You could also consider putting it at the top, but I'm going to leave it at the bottom for now. This is obviously a very simple view of how we could start to think about the cheese page for each cheese, in terms of how you would add something into Wallis. I'm only going to do it for the ad screen, but you should think about how to do this for every screen that you've drawn on your user flow. Once you've done so, take photos or put them in another tool, such as sketcher Balsamiq, and upload them to the class project page.
11. Testing & starting to build: At this point, you've created most of the deliverables a product manager makes every time they get through the project process. Now, we get to the most important part, maintaining momentum and making sure our project actually ships. There's a lot of different paths you can take from here. The first option would be doing some light usability testing on the wireframes that you already made. You could take them to a target user, they would like to use your application, and ask them to perform a simple task. In Wallace's case, that could be going through the process of adding a cheese. Alternatively, you can build a different type of prototype that gives a little more functionality. For instance, earlier this year, I used a Squarespace website into Google documents to simulate an application that would have to be a mobile application that had both geofencing and a bunch of push notification integration. Using only half an hour work instead of a ton of development time, we're able to generate $2,000 in revenue connecting photographers and event organizers. Another option is to start making higher-fidelity mockups using Photoshop or Sketch. If you were to do that, you can use one of many tools like InVision app or like Sketch, to show that higher-fidelity process that basically looks like a real application to other people. You might be able to convince them to give you funding if you're an entrepreneur, or to work with you if they're an engineer. Finding another engineer to work with is also a great idea. That's what I ended up doing with Wallace. I found an engineer who was equally interested in putting together cheese plates and discover any cheeses, and we work to make a rudimentary version of our iOS app, which I'll show you in a little while. Any of these options are great ways to continue with your project. Of course, if none of those work for you, another one that you could try is learning how to develop mobile or web applications yourself, and going from there. Regardless of which direction you choose, take the time to put everything together, and now looks shockingly like a product management specification, upload it to the class project page along with your action plan for what to do next. Congratulations.
12. The Wallace app: Now that we've gone through everything, I wanted to give you a chance to see how wallace turned out. Like I said, a friend and I built a rudimentary prototype. So here's my folder on my phone of Wallace Stuff, as I call it, which has Delectable and Paprika, two apps I use for inspiration, and then wallace. So you launch, and you get into a list of cheeses. Right now, it's just Gouda, and then you're able to add a cheese, and you can see this works about like how we said. The text is free form, so I can say Mimollete, which is one of my favorite cheeses, give it a rating, five stars, of course, and then what I need to add other characteristics, I can just go in, pick what they are on the other screen, and then go back. I'm able to add as much information as I want to, and then save the cheese so it appears on my screen right there with Gouda. It's been really great to be able to use this when I'm going out and trying cheeses. As you can see, I have a clean version right now, so you can see how it works at the beginning, but it's been so useful to have. I hope your projects all turn out just as well, and I'm looking forward to seeing them on the Class Projects page.
13. Final thoughts: Congratulations, you've made it to the end of the Fundamentals of Product Management here on Skillshare. Thank you for taking the class and for uploading your work to the project gallery along the way. It's been exciting to follow along and see what everyone is working on. Of course, this isn't really the end, it's just the beginning. Now that you've taken the time to build your vision, your goals, your future list, and your user flows, and started to develop an action plan, it's time to do exactly that; put the plan into action. You can go forwards by either learning more about a specific skill, here on Skillshare or elsewhere, to be able to implement yourself or you can go about finding a friend with a complimentary skill set who's also passionate about the area you decided to do your project in. Either way, I'm excited to see what all of you finish. Of course, if you get to the point where you finish the project, you can come back to this class and go through it again with one of the other ideas we had early on. Product management is an iterative process and we're never done building new products.