{{#include intro.md}}
Lead Engineer aka Team Lead is a core leadership role in the MayaData. You are responsible for a particular team of about 8 people, working on delivering component of the MayaData portfolio.
Team Lead is still considered a technical position. You are expected to be coding and contributing at more then 50% of your time. We don't believe in dedicated people managers on the team level as we are a strong engineering organization.
- Make sure, that people in the team are feeling comfortable and secure. They understand overall MayaData vision and strategy. They understand why they are working on particular features.
- Understand the gaps by involving with multiple teams in company.
- Suggest improvements and changes to the overall organization of the Engineering and your team.
- Identify metrics for various components like code quality, team productivity, motivations, culture, sessions feedback etc.
- Define goals/OKRs with and for your team.
- Help you team to learn and grow, identifying external/internal training requirements.
- Exhibit and inspire team to follow process/culture.
- Track our marketing and sales activities. Encourage participation and participate at conferences, write blog articles, tweet etc.
- Keeping an eye on your team's JIRA and keeping it healthy.
- Project level tracking for execution completion within time.
- Lead/participate in internal project review meeting.
- Helping in risk mitigation for project execution.
- Plan team size in advance.
- Project level check for required E2E coverage.
- Make sure that we follow team's definition of done.
- Agrees with Product Manager on the overall priorities, and define together the intended content for upcoming releases.
- Works closely with the Product Manager and organizes grooming sessions anytime there is a need for discussion over items in backlog. Grooming sessions takes place regularly with intervals between 2 and 4 weeks.
- Convert Stories to backlog Epics and Tasks. Participate at grooming sessions with Product Management.
- Be a close partner to Product Management organization to identify new initiatives, improve existing features and mitigate issues our customers may be facing.
- Prioritize work for team according to agreed priorities with Product Management and the overall company goals and vision.
- Understand market trends on technologies, products. Research competitive solutions.
- Keep our persona needs on your mind. Proactively suggest changes to features or add new ones to backlog for discussion with Project Management.
- Always make sure, that you know why we are building something, so you can explain to your colleagues.
- Learn new technologies and train the team. Allow other colleagues in your team to spend time on learning and playing with new technologies.
- Listen to new learnings from company and guide them on choosing one that match our requirements.
- Motivate team in writing skills like blogs, white papers etc.
- Always question the status quo -- cannot we automate some step in the process, cannot we use different approach to some tasks (e.g. how we do CI/CD, how we do generate documentation etc.).
- Promote and keep eye on the proper code-review techniques.
- Make sure required trainings happened with support team.
- Make sure dev/E2E teams have enough time in their tasks by empowering support team in solving user/customer issues.
- Avoid any escalations from customers with timely and apt response.
- Being active and leading few interested feature areas in other related open-source projects.