Bachelor's degree in Computer Science or Engineering (or similar)
5 years of working experience
Responsibilities:Analysis and Planning 30%
Lead the application lifecycle (planning, design, development, deployment, ongoing maintenance), creating user stories and estimates, collaborating with cross-functional teams.
Continuously research, evaluate and integrate new technologies to optimize development efficiency and application performance.
Plan and design well-structured, reusable application architecture.
Introduce and implement best practices to ensure high-quality, maintainable systems.
Participate in project planning by providing accurate estimates, contributing to requirement documentation, and assisting in work breakdown structures for the team.
Lead the collection and documentation of user requirements, user story creation, estimation, and work plan development, ensuring clear communication of requirements.
Effectively prioritize, and manage dependencies to ensure timely completion, and switch contexts effectively when the need arises.
Collaborate effectively with cross-functional teams to solve problems, make recommendations, and discuss best practices.
Proactively identify and mitigate cross-functional and user-facing risks, adapting as needed.
Track task and project progress within JIRA.
Development and Testing 40%
Lead and participate in software development adhering to project plans, deadlines, and coding standards.
Develop and maintain high-quality, maintainable systems using efficient and reusable code according to best practices.
Use version control effectively and according to best practices, as well as backing up other work according to company standards.
Prepare and maintain comprehensive testing environments with clear examples and instructions.
Conduct initial testing and assist in developing testing plans to ensure applications meet specifications.
Implement and maintain automated tests and component libraries and contribute to team best practices.
Analyze systems to identify root causes of issues across systems, develop workarounds, and implement permanent fixes.
Deliver thoroughly tested, performance benchmarked, and functionally-compliant work, ensuring readiness for deployment.
Deploy changes to the production environment following established procedures and supervise more junior team members.
Oversee, implement and maintain all DevOps processes, including CI/CD pipelines and Infrastructure as Code as applicable to the team.
Take ownership of maintaining up to date and accurate code and system level documentation .
Collaborate with members of other teams to ensure timely integration between systems.
Reporting and Communication 10%
Provide clear, timely, and insightful updates on project status, progress, risks, and potential problems to the line manager and stakeholders.
Prepare reports, manuals, and other documentation related to software status, operation, and maintenance.
Maintain accurate system and product change logs, release notes and notifications to other teams, according to company standards and team practices.
Offer expert insights and feedback on queries regarding relevant projects.
Collaborate effectively with team members and stakeholders, by being available on appropriate communication channels with timeous, well articulated responses.
Contribute to the team 10%
Take ownership of projects and products, driving successful completion.
Actively participate in peer code reviews, provide constructive feedback, discuss best practices, and contribute innovative ideas to projects.
Collaborate with the team, and interface with other teams, to solve problems and ensure successful project and product delivery.
Lead and mentor the development team, fostering a collaborative, innovative, and growth-oriented environment through coaching, code reviews, knowledge sharing, and promoting best practices.
Identify opportunities for team growth and encourage skill development.
Contribute to the recruitment process by providing technical expertise.
Quality Management and Compliance 5%
Lead the development of high-quality products that meet specifications, user requirements, best practices, deadlines, and regulatory compliance (e.g., FDA, CE, ISO).
Apply knowledge of the Quality Management System guidelines and its relevant processes to ensure quality and SOC2 compliance in medical device- and other software.
Ensure all testing adheres to defined specifications and contributes to continuous improvement of existing applications.
Lead efforts to safeguard information and data in accordance with company policies.
Keep all supporting documents up to date.
Assist the team lead in keeping processes relevant and up to date.
Infrastructure & Database Administration 5%
Design and implement new database structures and content, ensuring optimal performance and scalability.
Lead the maintenance of database integrity and efficiency through ongoing optimisation strategies.
Lead data restoration efforts when required, minimizing downtime and data loss.
Perform advanced and higher-risk DevOps and Infrastructure as Code changes responsibly when the need arises.