Principal Software Engineer- Java Full Stack
Job Description
Job Purpose
JOB PURPOSE
The Principal Engineer is a key technologist in the Software Engineering capability, helping to drive software engineering strategies, standards and guidelines at enterprise level. Engineering business critical technology solutions through the application of software programming, quality management, data engineerin, and big data analysis as well as ensuring robust engineering practices for solution planning, technology development, deployment, release, hyper-care and operation of technology solution. The Principal Engineer leverages their expert skills in technology stacks to enable the business to solve complex analytical problems in areas like planning, commerce, customer experience and operations.
JOB ACCOUNTABILITIES LINKED TO OBJECTIVE AREAS
1. Lead technical design and build for complex solutions across teams. Review and approve technical design. Carry out effective design reviews to ensure that the right architecture patters are used by engineering teams.
2. Technical stewardship of a subset of technology area. Use expert knowledge of the technical stack and design principles for the components in the technology area to solve complex business issues. Represent software engineering in cross business area initiatives.
3. Champion automation and lean software development, test driven development, timely root cause analysis and incident post-mortems. Help define and refine the software and data engineering playbooks for use by relevant people in Technology.
4. Lead discovery phase of medium to large projects to come up with high level design, partnering with cross-functional teams. Drive proof-of-concepts and implementing prototypes to validate ideas.
5. Investigate, debug and fix complex issues involving corner cases and rare conditions. Drive buit in quality in engineering teams in collaboration with end to end quality assurance.
6. Mentor and coach engineers on writing clean code and debug complex cases. Teach and help developers test their code better and influence developers to write tests and review their work
7. Develop accelator framework and practices to improve quality of technology solutions and productivity of engineers. Develop optimal technical design and high-quality code for technology products that passes the QA requirements and is production deployment ready. Carry out functional, non-functional and performance testing in using appropriate automation tools.
8. Measure and monitor engineering metrics that enable agility, scalability, data quality and reliability of technology solutions across the enterprise.
9. Responsible for technical debt remediation strategy and execution with support from environment management, service management, infrastructure management and cyber security.
Qualifications & Experience
Information Technology.Software : 8+ Years
Degree or Honours (12+3 or equivalent) :Computer science, Computational Mathematics, Computer Engineering or Software Engineering.
Experience:
Software Engineering
– Deep experience in designing, developing and maintaining advanced technology solutions for large, complex organisations in a multi-functional, Tier0 environment.
– Experience in agile ways of working
– Implementation of contemporary engineering practices like lean software development, test driven development, continuous integration and continuous deployment
– Team player with a problem-solving attitude using variety of software
– Experience in influencing business and cross functional stakeholders
– Excellent written and verbal communications
Knowledge/skills: Must have broad expertise or unique knowledge in one or more of these areas, based on the area of hiring
Technology Domain
Key Technologies
Java Full stack
– JAVA, J2EE, Spring, Spring Boot, ReactJS, Angular, Redux and Node.js, object-oriented HTML 5, CSS, JavaScript and TypeScript, Microservices Design and implementation, Automated Testing Framework using technologies Jasmine, Jest, Karma, Junit
– API Development & deployment , Knowledge of REST & SOAP protocols, Integration and messaging tools like Informatica, TIBCO, Snaplogic and Solace, Kafka, JMS
– Couchbase, Cassandra, Oracle, MySQL, Postgres , Mongo DB, Elastic Search, Hbase, Exadata, Essbase
– Microservices, architecture concepts, deployment experience – Docker, Kubernetes deployment
– OAuth 2.0 implementation
– CI/CD implementation
Salary & Benefits
Join us in a management role and enjoy an attractive tax-free salary. On top of our generous travel benefits, including discounted flights and hotel stays around the world, this managerial role also has an excellent leave and healthcare package. That's on top of transport benefits, life insurance and more. Find out what it's like to live and work in our fast-paced, cosmopolitan home city in the Dubai Lifestyle section of our website www.emirates.com/careersJoin our growing team and enjoy a competitive remuneration package, discounts on flights and hotel stays. Find out more about working with us in our website www.emirates.com/careers
Job Details
Employment Types:
Full time
Industry:
Airlines / Aviation / Aerospace
Function:
IT
Roles:
Software Engineer / Programmer
Skills:
PRINCIPAL SOFTWARE ENGINEER