Software Engineer - AI Development
About the Role:
We are seeking an experienced Software Engineer to join our product development team. As a Senior Software Engineer (AI Integration), you will be responsible for evaluating and integrating in-house and 3rd party AI capabilities into our large web-based application.
Key Responsibilities:
* Design, implement, and test software components in Java.
* Utilize data storage technologies such as Postgres and Elastic to design data storage models.
* Coach junior engineers and manage small teams to ensure quality and timely delivery of software components.
* Deploy and manage applications in a cloud environment, such as AWS.
* Apply web front-end technologies like HTML and CSS.
* Employ software frameworks like React, Angular, and Spring.
* Evaluate, integrate, test, and deploy advanced AI models.
* Collaborate with data scientists to define model requirements, APIs, develop, and integrate AI capability into software products.
* Work with Data Science and DevOps to ensure AI capability is scalable and robust in production environments.
Requirements:
* Australian citizenship due to NV1 defence clearance eligibility.
* 10-20 years of experience in relevant software engineering or technology development, with at least 5 years of experience in AI and machine learning development in a commercial setting.
* Bachelor's Degree in Systems or Software Engineering/Computer Science or related discipline.
* Strong understanding of machine learning algorithms, neural networks, and latest generative AI (LLMs).
* Deep technical knowledge of significant parts of our tech stack, including Java, with hands-on experience working on large/complex software projects using that tech stack.
* Highly organized, problem-solving ability, and ability to get things done.
* Excellent collaborative team player and meeting deadlines.
* Strong communication and technical documentation skills.
* Experience with key technology areas including software engineering, data storage, web technologies.
Experience across:
* Deploying and managing applications in a cloud environment.
* Using web front-end technologies.
* Using software frameworks.
This is a challenging role that requires strong technical expertise, excellent collaboration skills, and the ability to work in a fast-paced environment.
Please note that this job description is not inclusive of all responsibilities and may be subject to change based on business needs.