Sr. Software Engineer
Advantive
Position: | Senior Software Engineer (Java) |
Reporting To: | Development Manager |
Group: | Kiwiplan NZ |
Team: | TBC |
Location: | East Tamaki, Auckland |
Staff Responsibility: | N/A |
Date: | January 2025 |
Position Purpose
The general purpose of this role is to deliver software that meets our customers’ needs within the assigned timelines.
This position may include taking ownership in project leadership roles, and lead and mentor others in the development team.
Key Accountabilities & Result areas
Software Design
Objective | Means for Achieving the Objective |
The completed software fulfils that users’ requirements, and the user interaction is simple, attractive and intuitive | Participate in Requirements Analysis discussions. Prepare screen mock-ups and descriptions of user interaction/workflows. |
Solutions are of a good technical quality, and fit well within the overall application architecture | Consider an appropriate range of implementation options and make recommendations of best approaches. Prepare technical specifications. |
Development time is accurately estimated to facilitate reliable project schedules | Identify units of work and determine estimated development time. |
Software Development
Objective | Means for Achieving the Objective |
Solutions are developed with a minimum of defects and completed on-time | Complete the development of new functionality and modifications to existing functionality. Write unit tests and conduct an appropriate level of manual testing prior to handing the work over to the Testing team. |
Code can be easily understood and is well structured to allow for efficient future maintenance
| Write clean, carefully documented, object-oriented code. Adhere to the established Kiwiplan standards and processes. Obtain peer review of design specifications and completed code. Conduct peer reviews of other Engineer’s specifications and code. |
Knowledge Transfer
Objective | Means for Achieving the Objective |
Learning outcomes are applied to future development tasks across the entire development team | Involve team members in design and development discussions.
Present tutorials and information sessions. |
Development tasks can be readily shared among team members.
| Lead Functional Reviews of completed software. |
Other departments have sufficient knowledge to complete their responsibilities (such as testing and release documentation) | Participate in discussions with staff in other departments.
Contribute to internal knowledge bases. |
Leadership
Objective | Means for Achieving the Objective |
Technical challenges are resolved effectively | Contribute to training and mentoring of team members. Provide technical advice and problem-solving assistance. |
Processes are efficient and the team is productive | Drive Process Improvement initiatives. |
Development decisions are of a high quality | Assist in supervising and approving technical specifications and participate in architectural and technology decision making |
Provide technical, domain and thought leadership within the development team | May be required to provide development leadership for a given development or project. Provide domain expertise in at least one product area for Kiwiplan. |
Support
Objective | Means for Achieving the Objective |
Internal and external customers receive the assistance that they need
| Act as a point of contact for the Testing Team and Support Teams. |
Health & Safety / Compliance
Objective | Means for Achieving the Objective |
Compliance | Ensure a sound understanding of, demonstrate commitment and comply with all legislation and Kiwiplan policy relevant to the role and activities undertaken in the role. |
Health & Safety | Undertake all work in a safe manner and follow all company and workplace health and safety procedures. Identify new hazards and advise manager or workplace Health and Safety representative within 24 hours of identification. Accurately report incidents and accidents to manager or workplace Health and Safety representative as soon as possible. |
RELATIONSHIPS:
Development Manager | Direct Manager |
Product Owners | Supervise / Lead the team and assign the workload. Provide help in eliciting requirements & defining and refining scope. Discussion of proposed development solutions. |
Technical Lead | Provide guidance with development approaches and give feedback based on results. |
Scrum Master | Provide coaching and leadership to the team to be more productive and encourage them to produce quality products. |
Testers | Build relationships with Test Analysts & provide help in identifying and resolving issues. . |
Software Engineers | Build relationships with other Engineers and ensure the consistency of approach, and quality of implementation. Develop integration solutions. |
Technical Writers | Provide knowledge on products. Ensure that the Technical Writing team is in the loop and review the documentation created. |
Support Team | Provide product knowledge and assist in issue analysis and reproduction. |
THE SKILLS & EXPERIENCE THAT YOU NEED:
Criteria | Degree of Criteria |
Typical Experience | At least 5+ years’ experience within a software development position and/or demonstrated proficiency in a specific product domain. |
Technical Skills | Expert knowledge of the relevant programming language, platform and development environment (Java, .Net) Strong unit-testing skills. Strong object-oriented analysis and design skills. Strong data analysis and modelling skills Web development experience, (HTML, JavaScript, frameworks such as ReactJS, AngularJS). Relational database development experience. Exposure to distributed architecture development (RMI, Web Services, etc.) Moderate Operating System and hardware knowledge. |
Communication & Personal Attributes | Demonstrated initiative and leadership ability. Demonstrate the desire to impart technical and domain knowledge to assist in the development of the team. Excellent verbal and written communication. Excellent problem-solving ability. Demonstrated 5+ years working in a team environment with substantial collaboration and communication, and assuming some leadership responsibilities. Demonstrated ability to manage time effectively, break tasks down into appropriate units of work, and successfully deliver milestones. |