Application Software Engineer

Location: Melbourne, Australia

Department: Applications Engineering

We are currently seeking an Applications Software Engineer work in our Bayswater Head Office reporting through to the Software Team Leader. The primary focus of the position is to create, enhance and maintain ANCA's application software suite to support ANCA CNC Tool & Cutter Grinding machines.

Responsibilities of the role include;

Projects

  • Design and develop software features that meet the user story acceptance criteria.
  • Work closely with product owner to create and refine the product backlog through writing and estimating user stories.
  • Write user stories that follow the INVEST principles (independent, negotiable, valuable, estimable, small, testable), in particular paying attention to having detailed acceptance criteria.
  • Plan sprints and track sprint progress using a burndown chart to ensure that any impediments/delays are promptly identified and resolved so that the sprint goal is met.

Quality

  • Improve readability, reduce complexity and improve maintainability of the code base.
  • Understand and apply modern software design principles and patterns.
  • Create unit tests for new and existing code.
  • Participate in pair programming sessions with other team members.
  • Provide detailed information when creating, triaging and resolving Redmine issues.
  • Document designs, technical information, and team processes in the wiki. Ensure that information in the wiki is up to date and relevant.

Support

  • Respond promptly to TAFs and Redmine issues.
  • Support other departments and overseas branches with enquiries and issues.

Teamwork and Continuous Improvement

  • Improve team workflows, processes and interactions through Sprint Retrospectives.
  • Conduct developer presentations to share new knowledge and stimulate learning, discussion and innovation.
  • Participate in brainstorming and problem solving sessions with team members.
  • Support and mentor team members within and outside of the department.
  • Encourage and drive a collaborative, fun, friendly, and inclusive work environment.

The successful candidate must have the below skills and attributes;

  • A Degree in Software Engineering, Computer Science, Mechatronics or related qualification
  • Experience in Object oriented software analysis and design
  • Expertise in Java programming language
  • Problem solving and analytical ability
  • Engineering mathematics: algebra, calculus, numerical analysis, kinematics
  • Experience with algorithmic optimization and working in a multi-threaded environment
  • Understanding of Scrum or similar Agile framework
  • Knowledge of Tool Grinding is preferred
  • Knowledge of other programming languages such as Python, C++, C#
  • Knowledge of 3D graphics frameworks (OpenGL, DirectX)
  • Knowledge of web design

    If you are interested in applying for this position please send your covering letter and CV asap.