TechLead-Story: Matthias Posch, CTO at tubics
Matthias Posch
Team
Size and Roles:
- Current team size: 5 members, including a Team Lead, 2 Frontend Devs, and 2 Backend Devs (one of whom also functions as a Sysadmin).
- Cross-functional roles: Frontend and Backend developers occasionally overlap in responsibilities.
Organization and Methodology:
- "tubics-scrumban" methodology: Adapted approach combining elements from various methodologies, emphasizing flexibility.
- Practices include 2-week sprints, Sprint Planning Meetings with Story Points estimation, Sprint Retrospectives, Pair Programming, Pull Requests, and Peer Reviews.
- Agile and adaptive to changes, allowing a minimal set of committed tickets with a large buffer for flexibility during sprints.
- Product Team focuses on future features and strategic product direction, translating into abstract User Stories for detailed specification by the Dev Team.
Distinctive Team Aspects:
- Strength lies in adapting established development models and theories to the unique team situation.
- Emphasis on understanding personal strengths and weaknesses, fostering an environment of learning from one another.
- Approach to errors involves root cause analysis without pointing fingers, treating code as a collaborative effort to improve the product and the team as a whole.
Recruiting
Integration in Recruiting Process:
- Involvement of Frontend or Backend developers in the second interview.
- Code examples of candidates discussed within the team.
Onboarding Procedure:
- Extensive onboarding meeting on the first day with the Team Lead to set up accounts, access, and local development environment.
- Introduction to development methods, JIRA workflow, and immediate involvement in coding with a first User Story.
- Integration into the team's daily tasks, meetings, and responsibilities from day one.
- Initial focus on 1-on-1 discussions in the first weeks, along with welcoming new members with a celebratory after-work beer.
Qualities Beyond Technical Skills:
- Team fit and work attitude considered equally important as technical skills.
- Ability to independently adapt to new environments, introduce personal principles to the codebase without disrupting existing code, and handle constructive feedback.
- Critical problem-solving skills, including the ability to break down complex issues into manageable solutions, balanced with seeking help when needed.
Technologies
Technical Challenges:
- Dependency on the YouTube API as the primary data source presents challenges and restrictions that require creative solutions.
Technologies in Use:
- Angular, Node.js, ExpressJS, TypeScript, MySQL, Docker, Cypress, and third-party APIs.
Evolution of Technology:
- Core structure of the application has remained consistent since the beginning.
- Adoption of Microservices architecture over time.
- Backend hosting transitioned from Heroku to Google Cloud Platform with Docker Swarm due to cost considerations.
- Maturation of the product led to increased investment in logging and error handling.