Job Description
">
This is a Senior Software Engineer position that involves designing, developing, and maintaining innovative software solutions. The ideal candidate will have expertise in programming languages and software development methodologies and principles.
">
Key Responsibilities
">
* Actively participate in Agile ceremonies such as sprint planning, daily stand-ups, sprint reviews, and retrospectives.
* Work closely with cross-functional team members including product owners, designers, testers, and other developers.
* Design, develop, and maintain efficient code using the appropriate programming language and toolsets.
* Collaborate with other team members to design, implement, and test software features.
* Write unit tests to ensure code reliability and maintainability.
* Participate in debugging and troubleshooting to identify and fix issues promptly.
* Use version control systems to manage and track changes in the codebase.
* Lead by example when conducting code reviews to ensure code quality and knowledge sharing within the team.
* Contribute to the implementation and maintenance of pipelines to automate the software delivery process.
* Ensure that code changes integrate seamlessly into the existing codebase.
* Create and maintain quality documentation for code, APIs, and other relevant technical aspects.
* Frequently share knowledge and best practices with team members.
">
Requirements
">
* Bachelor's degree in Computer Science, Software Engineering, or related field (or equivalent experience).
* Development experience in the required language, including OOP.
* Experience working with applicable libraries/frameworks e.g. FastAPI.
* Experience with commonly used development tools (IDEs, git etc.).
* Understanding of containerisation and serverless technologies.
* Working knowledge of cloud platform resources e.g. Azure.
* Experience with Agile methodologies and tools (Scrum, Kanban, Azure DevOps, Jira).
">
Skills and Abilities
">
* Problem-solving: analyse complex problems, break them down into smaller components, and develop effective solutions.
* Continuous Learning and Improvement: have a growth mindset and actively seek opportunities to expand knowledge and skills within their practice.
* Communication: communicate in a clear and concise manner, both verbally and in writing, to technical and non-technical stakeholders.
* Time Management & Results Driven: prioritise tasks effectively and manage time efficiently to meet sprint goals.
* Team Player: develop effective relationships within the team, actively engage in team discussions, and encourage and work with other team members using empathy and compassion.
* Mentorship: provide guidance and support to less experienced engineers, sharing your expertise and experiences through sessions, code reviews, and discussion.
">
What We Offer
">
We are an equal opportunity employer and value applicants from all backgrounds. We foster a culture of inclusivity and understand the need for flexibility. Please let us know if you require any reasonable adjustments during the recruitment process.
">
We expect our employees to act with integrity, due skill, care, and diligence, be open and cooperative with regulators, and deliver good outcomes for customers.