Translate a business requirement into a software product or feature
- You have a solid understanding of the business domain of our company. You know what the other departments do, what their main processes and the main points of contacts are and what they use our software for. You know the different vocabulary used for domain comcepts by both business and tech teams and you are comfortable translating in between.
- You know how we write user stories or other types of tickets and are able to write tickets of up to medium complexity on your own and larger ones with the help of a colleague. You know what kinds of questions developers have when taking on your tickets and can anticipate most of the time when writing tickets.
- You have a repertoire of different ways of describing a feature (textual descriptions, outcome tables, wireframes, diagrams ...) for different types of problems.
- You are comfortable creating and specifying UI / UX designs for topics on our roadmap.
Know the existing product
- You are familiar on a detailed level with all features of our existing software. You are able to learn how an exiting piece of software works efficiently.
- You can assist and train our users by answering questions about existing functionality and answer to them whether and how a given task can be performed in our current system.
Know our users
- You continuously talk to and listen to our users to develop ideas how structural and un-reported issues can be solved.
- You are the voice of our users and represent their interests in the engineering team
Build a product vision
- You know the reasons and motivations behind our product design decisions and you are actively catching up with your knowledge about past decisions by asking questions about why things are the way they are.
- You can estimate the business value and the rough development effort of a feature request or bug fix.
- You actively prioritize our backlog based on input from our executive team and make hard decisions what not to do to keep our product vision focused and clean. For smaller scale decisions (how urgently do we need to fix this bug?) you make judment calls on your own.
- You identify unused product features and suggest them for removal.
Process & Tooling
- You know and influence which tools we use for at which stage of our process to communicate with stakeholders and engineers. You use them effectively and you help others to do the same.
- You know and continuously shape and improve the process that a feature takes from the first description of a problem until it is deployed to production.
Know what else is out there
- You are aware of processes and methodologies other companies to manage their roadmap and deliverables.
Know the capabilities of our technology stack
- You know the technologies we use for what parts of our stack. You are learning what kinds of changes are easy to do with them and you begin to take this into account when designing features.
- You know the main concepts in our data model and can communicate with developers using "data model diagrams" (e.g. User has many ScalePriceTariffs).
Structure a large project with all dependencies into manageable parts / deliverables
- You seek out ways in which a story can be broken down into individual smaller deliverables that are already usable and already provide business value and break them down accordingly.
- You apply the Pareto Principle and seek out solutions that give you 80% of the value with 20% of the effort.
- You initiate and lead requirements gathering meetings, take notes and structure drive the follow-up tasks like clarifying open questions, writing summaries or writing tickets.
- You actively participate in development planning meetings and are able to convey the user's context and problem situation as well as how the intended solution fits the problem.
Estimate and communicate progress and deadlines
- You prioritize and plan features on our roadmap to meet business deadlines. If business deadlines are in conflict with other prioritized requirements you notice these and point them out.
- You communicate the status of requirements and projects proactively to other involved departments, especially when things change.
Proactively detect problems and risks and communicate as well as mitigate them
- You keep a keen eye on potential problems, wasted work and any risks to the deliverables. When the risk of missing a delivery target is high, you come up with solutions to reduce the risk or change the scope.
Quality Assurance
- You perform manual testing on the delivered features and tickets and validate they work as expected.
- You explore most edge cases to make sure the system behaves as expected, even under unusual usage.
- You know how a given feature might interact with other existing features and make sure they are unaffected.
Good verbal and written communication
- You write user stories that cover all important aspects of a requirement but are easy to understand and well structured
- You can introduce or describe a feature effectively both to developers and to business stakeholders in their respective languages
- You can communicate priorities and "say no" to feature requests in an understandable, reasonable and friendly way.
Interact well with team members
- You are friendly and pleasant to work with. You can resolve most of the personal conflicts by yourself – by reaching out and suggesting a conversation.
- In your role as QA you often have to critique your colleagues' pieces of work or their choices and priorities. You do this in a patient, constructive and non-confrontational way. You look out that other colleagues do this as well and help mediate in difficult situations.
Help improve our team process
- When you are not satisfied with some aspect of our team process you mention it during a retrospective and work towards finding a solution.
- You participate actively in our existing team processes by note-taking, scheduling meetings, and taking on action items from meetings. You document changes in our team process in Don't panic.
Interact well with business stakeholders / customers
- You actively communicate the product vision to other departments and make sure they understand our capabilities and constraints.
- You understand that you are a representative of the IT team and you help creating a positive image of our department.
Help others succeed
- You react to help requests from your colleagues and help them resolve a problem in the area you have more knowledge.
Remote work
- You actively reach out to remote colleagues if you have any questions for them. Other people being remote is not a communication barrier for you.
- When working remotely you actively take part in the communcation with the rest of the team.
Look for and act upon feedback
- When receiving feedback you react to it, learn from it and adjust your future work style based on it.
Handling "being stuck" / time management / following through
- You realize when you need help and ask your team members
Self reflection and continuous self improvement. Awareness of own strengths and weaknesses.
- You have a good idea of the topics you want to learn and you identify new topics to add to this from your work
- You gain experience in techniques that we use, but are not your primary focus
- When your task requires new knowledge you first try to acquire the knowledge on your own before you look for guidance in your team
- You admit mistakes and learn from them
Knowledge sharing
- You are able to share information about how our system works with other team members and other departments
- You can explain how features of our platform works to our users in a way that's tailored to the audience (e.g. by giving release demos to the rest of the company)
- You can write down guidelines in an area that you have more knowledge than others.
Mentor more junior colleagues
- You help out with the internships / traineeships and explain our software and our domain model to newcomers.
(bonus) Represent Liefery outside the company (e.g. Conferences)
- You contribute to our engineering blog.