Job Description
Job Title
Software Development Engineer (C#, .NET, Angular)
Position: Software Enigneer (Full Stack)
Skills: .NET + Angular
SUMMARY:
With Strong software development and mastery of engineering practices throughout the software development life cycle, Software Engineer solves technical challenges and collaborates within product group to deliver effective and consistent technology.
We’re looking for an energetic and creative individual who has a passion for technology. You’ll be joining one of the world’s top 10 software company to power better journeys.
DESCRIPTION:
About the ideal candidate
- University degree in Computer Science, Information Technology or equivalent
- Minimum of 5+ years of experience with hands-on development and exposure to advanced C# concepts, .NET framework and design patterns.
- 5-8 Years experience delivering robust web-based products applications, using Microsoft tech stack including C#, .NET MVC, WEB API, .NET CORE, SQL SERVER, and Angular.
- Azure (or any Cloud) industry expertise "to facilitate Cloud Migration", Azure Devop ops hands-on. Azure AZ-900 Certified.
- Understand Distributed systems
- Decoupled applications plugged-in a scalable network
- Resiliency, Caching, Queuing, Serializing
- Decoupled and distributed database
- Deployment, Monitoring and logging best practices and available tools like SPLUNK, Kibana, SWB, Jenkins, Airflow etc.
- Able to handle complex use-cases and dependencies
- Awareness on containerization (Docker & Kubernetes) and services like AKS(Azure)/EKS(AWS) and Service Oriented Architecture
- Mentorship skills and stakeholder management
- API development expertise - various protocol - REST, Open API, Throttling, limiting, security, monitoring etc.
- Hands-on DevOps – expertise on some CI/CD tools
- Expert in software designing and strong problem-solving skills using design patterns
- Experience in static analysis tool and improving software quality together with team. Experience in refactoring legacy modules into robust and modern modules.
- Expert in one or more structural messages [XML(XSD), JSON(Swagger), and YAML]
- Knowledge in data structures and algorithms, knowledge in distributed data structures.
- Hands on experience with DB [at least 2 among embedded (e.g. SQLite), client-server (e.g. oracle), NoSQL distributed (e.g. mongo, couchDB)]
- Understanding of non-functional requirements (NFR) and/or underlying technologies impacting final solution.
- Model, design and implement Application (batch, daemons) / service (REST, WS).
- You should be able to self-manage the complex modules
- Natural tendency to work collaboratively, solve problems with groups, find win/win solutions and celebrate success.
- Excellent English verbal and written communication skills to convey technical information to stakeholders and / or be able to influence technical decisions
- Awareness of latest technology trends and standards in the industry.
Common accountabilities:
- Proficient in technical knowledge to ensure team performs at a high level.
- Understands how main business drivers may impact on own area. Can assess complex problems with broad impact on the activity, improve processes, recommend solutions and risk mitigation plans. Able to communicate complex information.
- Works with a high level of autonomy, based on management directions. May contribute to planning of resources and budget.
Specific accountabilities:
- Technical Excellence
Producing code of high quality with high efficiency
Work in each step of the product development cycle including creating technical requirements, complex feasibility studies, project planning, identifying dependencies and improvements
Investigate, analyze & give recommendations on the root causes of complex software and system defects
Solving problems/troubleshooting in a timely manner & with a high level of engagement
Foster applications that are easy to monitor and operate, to improve infrastructure availability
Apply best practices on code quality and security-safe code through non-functional requirements mastery, code reviews, coding guidelines, unit testing and code refactoring
Technological Acumen – cross disciplinary knowledge (ex. UI, network…) - Continuous Improvement
Suggest evolution of the component and make recommendations on how to manage the debt of the code / clean up the code
Improve the technical aspect of the project delivery and provide recommendations for engineering process improvement - Building cross-functional/technical teams & knowledge sharing
Work easily with others/ensure smooth communication
Consistently create successful engagement on projects and collaborate with cross-functional teams in driving operating and service excellence
Attending to PE community events
Being a Developer advocate (depending on area of influence, going to hackathon, recruitment days, conference, participating to Opensource)
Diversity & Inclusion
Amadeus aspires to be a leader in Diversity, Equity and Inclusion in the tech industry, enabling every employee to reach their full potentialby fostering a culture of belonging and fair treatment, attracting the best talent from all backgrounds, and as a role model for an inclusive employee experience.
Amadeus is an equal opportunity employer. All qualified applicants will receiveconsideration for employment without regard to gender, race, ethnicity, sexual orientation, age, beliefs, disability or any other characteristics protected by law.