This year, as part of the Queen’s Tech and Media Association (QTMA), I have the pleasure of working as a product manager with a team of developers in order to build a software product. It has been an immersive experience which has forced a lot of thinking about team management, business models, product development, and technology trends.
As part of the process, it will be fun to document the process, mistakes, and wins for future product teams on QTMA. This gives myself a chance to reflect a little more on some of the lessons that I’ve learned myself.
The product my team is working on focuses on allowing universities, online course providers, and businesses to easily issue and verify educational certificates and degrees. This will prevent fraud and drastically cut down the amount of time being spent verifying these documents.
Something that always comes up when looking to start a project is the refrain “I don’t have a good idea.” We ran into the exact same roadblock.
In coming up with our product idea, we started by listing out “cool ideas.” Eventually, we landed on the idea of verifying educational certificates using blockchain technology.
The trap that I really wanted to avoid with this product is working or building a product that is technically interesting, but with no real usage case. When that happens, developers (and even myself) will quickly lose motivation, because frankly, what’s the point? It’s a waste of everyone’s time and resources and something better left for personal side projects.
In reflection, this process wasn’t very efficient and there was a lot of time and effort wasted. If we were to work through ideation phase again, I would have placed more emphasis on implementing a design thinking process.
This is a methodology focusing on identifying problems, their root causes, and ideating solutions to target these root causes. This is opposed to being enamored with the technical complexity and “cool” factor of a product. In short, design thinking is a process that focused on creating sustainable solutions first and technology second.
One idea that our team is looking at implementing from design thinking is rapid ideation and prototyping. Rather than using a linear development process, where you only show users the product at the end of the cycle, you constantly create prototypes, show them to users, and add/remove features based on feedback.
I’m excited about showing this product to potential end users this year on a constant basis. That is going to involve setting up business development efforts, asking questions, and getting in front of real people. It sounds like a hassle, but these are the skills and experiences that are incredibly valuable should anyone on the team desire to jump into working on their own products or startups.
Blockchain Technology and Opportunities
Why are we using blockchain? Frankly, it’s because one of our developers really wanted to work with the technology.
Blockchain is an area with large amounts of skepticism and hype. Bitcoin is the best known example of this. The technology is in its infancy and requires significant time before maturity. One way to move toward that level of maturity is by experimenting and ideating business models which can effectively use it.
One thing that blockchain is good at is creating trust and authenticity. You can use it to verify the authenticity and origin of documents, transactions, and other assets easily. A great fit for what we are trying to do with educational certificates.
Team Management – Communicating with Developers
Developers are a tribe of blunt and analytical people. It’s refreshing. They frequently ask questions, demand clarification, and offer criticism of ideas.
As a PM, there I focus on three areas to make sure I can work well with my team.
- Knowing what I want
- I aim to always be clear with my vision of the product and what exactly we are building. I try and leave as little ambiguity as possible when it comes to assigning tasks. Explaining the reasons behind a task is also crucial for allowing devs to make decisions. The worst thing for developers is ambiguity and vague statements.
- Making sure they get what they want
- What do these developers want to learn? One of them wants to work with blockchain. The other two want to work on their web development skills. I made sure our project was blockchain based and that there would be web development modules for the developers to work through.
- Knowing my stuff
- As a developer, there are things that I know and I don’t. However, that’s no excuse for me to ask stupid questions. Taking the time to read up on concepts, dive into the code, and understand the technology we are working with has gone a long way.
Our next steps are to start building out our MVP. This means setting up the Ethereum smart contracts that allow for the issuance & verification of the product while creating a simple frontend UI to interact with the blockchain.We’re going to be building out these features during 4 hour hack sessions.
Until next time 🙂