“experience is a hard teacher because she gives the test first, the lesson afterward”
Lesson 1: Your relationships with your coworkers (interpersonal/leadership skills) and your technical prowess (hard skills) are equally important.
Lesson 2: Your ability to influence others is most prominently determined by your ability to help them reach the same conclusion you did, on their own.
Lesson 3: It is the mark of a great problem solver to ask many questions before beginning to think about a solution.
Lesson 4: Be proactive rather than reactive. Don’t be transactional, try to suggest new ideas and offer yourself to improve things and solve problems. People will value that.
Lesson 5: Actions speak louder than words. Keep the work done!
TIPS FOR DEVELOPERS:
- Read articles and maintain your skills up-to-date (keep learning)
- Try to document important things (a wiki is always helpful for the team)
- Follow agile methodologies (standups, groomings, sprint plannings, retros)
- Technical debts should be prioritized at some point. Is better to address the root of the problem rather than keep patching over time
- Take your time for Code Reviews, your feedback/questions are important
- Control and schedule deployments to production (release plans)
TIPS FOR PRODUCT MANAGERS:
- Listen to customer (but don’t listen to customers)
You need to understand the customer and solve the problem precisely. But don’t try to reinvent the wheel.
- Say “NO” (important vs urgent)
- Watch the competition (but don’t watch the competition)
Could be a rich source of information that can help us better understand our customer problems. We can test and learn from competitor features that failed. Those are signals that we should be watching and use it as an useful feedback for us.
- Be a thief (is fine to copy cool ideas)
- Get Paid (but stop worrying about getting paid for all)
Try to be careful about charges and pricing models.