Senior Software Engineer
2 г. назад
New ZealandWorldwideSeniorHybrid
software developmententerprise softwareaideployment architecturesmentoring
Experienced Senior Software Engineer to join core engineering team and define technical strategies.
О компании
- The Role: is looking for an experienced Senior Software Engineer to join our core engineering team (reporting to the CTO) to research and define future technical strategies for and our clients. The engineering team provides the core tools, techniques, and software libraries to support service development teams. You will guide proofs of concept to production, mentoring team members on new technologies and practices. You’ll also help our teams and customers navigate the development of effective, secure enterprise software and deployment architectures in the age of AI. Your team will consist of like-minded software craftspeople and will operate with a degree of autonomy seldom experienced in other organisations. operates a hybrid working model (
Обязанности
- Define technical solutions through research and team investigation, in line with the vision directed by the CTO.
- Actively participate in the design and construction of software across the full stack - including code structure, deployment architecture, DevOps, automated testing, and integration of third-party systems. This will primarily involve the use of LLMs, with the expectation you will do virtually no hand-coding.
- Collaborate with client stakeholders and fellow team members to ensure a shared understanding of solution design and roadmap delivery in line with agreed budgets.
- Drive the migration of existing polyglot solutions to standardized Rust and TypeScript, towards more standardized and portable deployment architectures, and pass on technical learning to the broader organisation to embed the technical strategies throughout.
Другое
- 7+ years experience as a Software Developer or Engineer, including experience working with enterprise-level complexity. High proficiency in at least one enterprise-quality programming language and its ecosystem. For example, C# .NET or Java and Spring.
- Must have some experience with a lower-level language for application or systems development such as Rust (preferable) or C++.
- Experience in TypeScript and React or similar front-end frameworks, and a well-developed understanding of web application development.
- Hands-on experience deploying to Azure and/or AWS, including building CI/CD pipelines and using infrastructure scripting frameworks (e.g., Terraform).
- Demonstrable experience in software design for distributed and asynchronous architecture. In particular, you will need to show examples of projects using microservices and messaging where you have been a key contributor to the design and construction.
- You will already have embraced the use of LLMs over hand-coding and be able to articulate how this has improved the speed to deliver and safety of the systems you build.
- With the help of LLMs you can produce clear and concise design documents.
- You have excellent written and verbal communication skills to translate between requirements and technical tasks.