How do insurance companies manage risks when the future is so unpredictable? How do they ensure they have enough resources to cover potential losses, from minor accidents to major weather events? The answer is to develop financial models using our world-leading risk management software. These models are time critical but computationally very intensive and generate terabytes of data, so every bit of performance counts.
Are you excited by the challenges of scalability and flexibility of desktop and cloud computing? We are.
Do you like the challenge of solving technology problems, and working closely with Microsoft? We do.
Do you want to work for a company with strong values and ethics? We embody principles such as inclusion, diversity, and social responsibility.
Do you enjoy solving complex time-critical problems and working within an innovative small engineering team, with an emphasis on software quality and reliability?
We are looking for a senior software engineer to join our friendly, agile team, working in a hybrid mode, with the flexibility to work from home and our fantastic offices close to Wynyard station in Sydney CBD
The Role:
You will work as part of a close-knit development team following Scrum methodology to work on existing and next-generation products, features and defects, whilst ensuring the highest levels of reliability, maintainability, usability and performance. This is an evolving role that will cover a wide range of tasks, where you should:
- Enjoy designing and implementing C# code, following SOLID practices for maintainability, testability and performance.
- Take pride in the quality of your code and enjoy collaborating as a team to continually improve quality.
- Contribute towards the improvement of our internal processes to maintain and build on our high standards of software development.
- Take satisfaction in refactoring code, reviewing and debugging code to identify defects and bottlenecks, promote code reuse and technical debt reduction.
- Be enthusiastic to learn new technologies as our product evolves.
- Contribute to design reviews and communicate requirement analysis and design decisions across the team effectively.
- Implement unit tests, develop test frameworks and associated automated test cases
- Work closely with test engineers to guarantee suitable test coverage, identifying and executing manual tests as necessary
- Actively participate in Sprint planning meetings, daily stand-ups and retrospectives in a small development team within a larger software group.
- Work effectively both within your team and liaising with other product teams, sometimes in a global setting to find appropriate solutions across products
- Work with team members and Product Owners to help create User Stories and define acceptance criteria.