Description
Want to kick-start your career in an international and dynamic environment?
Join SII through a V.I.E program and enjoy a unique human and technological experience!
Role Summary
The Middle Developer is an experienced and autonomous software engineer capable of delivering medium‑to‑large technical tasks with minimal supervision. This role requires solid knowledge of software development principles, hands‑on expertise with modern technologies, and the ability to collaborate effectively within cross‑functional teams.
Middle Developers play a critical role in designing, implementing, maintaining, and optimizing applications, while contributing to technical decision‑making, code quality, and continuous improvement initiatives.
Key Responsibilities
1. Software Design & Implementation
• Independently design and implement scalable, maintainable, and high‑quality software solutions.
• Translate functional requirements into technical specifications and well‑structured code components.
• Lead medium‑complexity features from concept to deployment, ensuring best practices are consistently applied.
• Refactor legacy components to improve performance, reliability, and maintainability.
2. Code Quality & Reviews
• Actively participate in code reviews, providing constructive feedback and ensuring adherence to coding standards.
• Mentor junior developers by guiding them through coding patterns, best practices, and architectural decisions.
• Identify technical risks, propose mitigation strategies, and ensure early detection of potential issues.
3. Testing & Quality Assurance
• Develop comprehensive unit, integration, and API tests to ensure robustness and maintainability.
• Collaborate with QA engineers to analyze defects, reproduce issues, and drive solutions efficiently.
• Contribute to improving the testing framework and automation coverage across services.
4. Maintenance & Troubleshooting
• Diagnose performance bottlenecks, memory leaks, and runtime issues across distributed systems.
• Investigate and resolve production incidents, ensuring root‑cause analysis and permanent fixes.
• Optimize application performance and reduce operational costs where applicable.
5. Collaboration & Cross‑Team Alignment
• Work closely with product owners, UX designers, architects, and engineering leads to align on technical direction and business priorities.
• Contribute to sprint ceremonies: estimation, planning, retrospectives, and demos.
• Communicate progress and blockers effectively to maintain transparency within the team.
6. Continuous Improvement & Innovation
• Stay informed about new tools, frameworks, and industry trends relevant to the tech stack.
• Propose improvements to the development workflow, architecture, or tooling (CI/CD, testing, monitoring, etc.).
• Actively participate in architecture discussions, sharing insights and best practices.