Our partner, a leading airline company is looking for a Java developer in their new IT Captive center. You are going to participate in the international team's and participate in developing tools and applications used by the Flight, Commercial and HR business teams.
You may follow a cloud migration closely (Azure) and take part in the process of working with microservices.
Specify, design, engineer, test, deliver, deploy, maintain and support digital products in order to optimally enable the improvement of business processes.
Business Platforms take ownership of digitally supporting a related set of business processes by providing a set of matching digital products. The Director of Product and Director of Technology take accountability for the business impact generated by the business platform.
The business platform is organized in product teams which take care of the digital products that are in scope for the business platform. Software Engineers are members of these product teams and bring all necessary skills to the team to enable the team to translate business needs into compelling products and deliver them to end users so that business value is created. Software Engineers take care of specification, design, engineering, testing, delivering, deploying, maintaining and supporting of digital products. Depending on the service level agreements (SLA) the Software Engineer can be asked to participate in consignation duties, fi. in case 24/7 support is agreed.
The ability to deliver code in one or more programming languages is at the core of the job. As they grow and expand their craftsmanship, Software Engineers are expected to become T-shaped professionals. Each engineer brings deep expertise in one or more crafts and proficiency in other crafts. In the product team, the Software Engineers together secure all the skills, knowledge and experience on analysis, design & architecture, development, quality assurance, DevOps, LCM and operational support as needed.
The Software Engineer hierarchically reports to an Engineering Leader who facilitates and stimulates the personal development and craftsmanship of the Software Engineer.
Key Result Areas
Software Engineers are T-shaped professionals where they show deep craftsmanship (the stem of the ‘T’) in at least the Engineering craft, but also at least proficiency in other crafts (the crossbar of the ‘T’). The fundamental idea is that T-shaped professionals boost the productivity of a team because they increase the team’s flexibility to optimize the flow of work through the team.
The following crafts are distinguished:
- Participate in translating business opportunities and requirements into (features in) digital products
- Participate in translating features into clear user stories for the team that clearly convey the WHY and the WHAT behind each backlog item, preferably in relationship to the product vision, business platform objectives and KPI’s.
- Translate requirements clearly to the team and stakeholders outside the team in order to secure correct implementation in the IT solution.
- Translate requirements to a functional design and acceptance criteria. Identify possible solutions that meet the design and criteria. Perform impact analysis, complexity analysis, effort estimation and break down the work in smaller chunks.
- Secure efficient delivery of the functionality by the team, in line with the functional design and on par with the acceptance criteria.
- Follow trends in industry, identify opportunities to generate new or additional business impact, support end users in adoption of new features and products
2. Design & Architecture
- Ensure a design of the digital products in relation to other digital products and technical platforms such that the overall architecture meets the business objectives
- Ensure that product architecture is in compliance with enterprise wide architecture principles and platform architecture vision
- Safeguard the design and architecture of digital products and choose the right technologies to design the solution to a business problem so that functional and technical requirements are optimally realized
- Secure compliance with regulations and laws on an architecture level
- Choose the right technologies for a product such that technical debt and continuity costs are balanced in relation to development costs
- Provide the design and architecture of digital products such that they are in accordance with up-to-date industry best practices on architecture and software design and follow the architecture guidelines as developed together with the Director of Technology for the business platform
- Provide designs for the internal architecture of the digital product to support the software engineering process
- Deliver updates and new features to the digital product according to the requirements, specifications, functional designs, technical designs, quality criteria, acceptance criteria, as applicable for each feature by writing the necessary code and implementing the necessary technical configurations
- Secure compliance with quality standards for load, performance, security and availability
- Secure compliance with regulations and laws in the internal design and implementation of the product
- Enable high quality of service in maintenance and support by adhering to code quality standards, and applicable guidelines for documentation, logging, monitoring, and administration
- Depreciate / remove legacy code, technical debt and unused features and decommission and phase out no longer used products
- Actively research and apply new technologies to keep the business platform and the digital products in its scope at the state of the art and retain its lead compared to competitors
4. Quality Assurance
- Ensure that digital products are potentially shippable by meeting all acceptance criteria applicable
- Safeguard a delivery process which provides accurate and fast feedback whether or not the updated product is shippable
- Reduce risk by making the product increments increasingly small, by a reliable and predictable deployment process, and by making the quality assurance steps repeatable and efficient, typically through automation
- Demonstrate quality by explicitly showing the product’s performance on technical and functional acceptance criteria that are applicable on a regular basis which prove that the product is shippable to production
- Secure the technical health of the product by maintaining it in accordance to technical and architectural evolutions, including life cycle management (LCM)
- Ensure short time2fix in case of live issues by monitoring the key technical and functional KPI’s in the team, by implementing and practicing reliable support procedures in the team, and by maintaining an overall good knowledge level, tooling experience and documentation practices across the team
- Secure optimal configuration of the full operational stack for products in the applicable testing, staging and production environments
- Implement infrastructure as code to enable repeatable provisioning and deployment of infrastructure and products
- Deploy updated products on a frequent basis to end users so that business value is created
- Safeguard a reliable and predictable deployment process in line with business criteria and accepted impact on end users, business process or applicable KPI’s
- Support the continuity of the deployed products in line with service level agreements (SLA)
- Secure proper incident resolution in the incident management process
- Implement and safeguard processes, practices and tools in the team and products for high quality support
- Implement and safeguard proper monitoring, logging and alerting on products and infrastructure to proactively predict, detect and/or register incidents and enable comprehensive analysis and resolution of these incidents and provide insights into stability and performance of products and infrastructure.
- Coordinate team members to deliver a complex increment to an existing product, the incubation of a new product, an R&D experiment, etc.
- Guide the team from a technical engineering perspective
- Responsible to secure the delivery as committed
- Monitors progress, organizes and executes interventions, leads the team, manages stakeholders
8. Consulting & Coaching
- Acts as subject matter expert, provides advise on best practices, trends, opportunities, pros and cons to support operational, tactical or strategic decision making
- Coaches colleagues on skill and craftmanship
- Support PO in proactively identifying new opportunities in the business and proposing new digital products and features to fulfil these opportunities
- Able to explain complex engineering-related topics to different types of audiences
- Participate in engineering and architecture-related discussions
- Discuss and validate architecture to support enterprise architecture governance process
- Use data in line with the Data Principles & Policies
- Ensure the use of data by consumers in line with the Data Principles & Policies
- Ensure continuity, capacity, security, compliance and retention for data in products
- Acts in such a manner as to contribute to the desired culture both within the platform and in interaction with the business