Businesses are built by the experiences they provide, and every day millions of those experiences are delivered by Avaya Holdings Corp. (NYSE: AVYA). Avaya is shaping what's next for the future of work, with innovation and partnerships that deliver game-changing business benefits. Our cloud communications solutions and multi-cloud application ecosystem power personalized, intelligent, and effortless customer and employee experiences to help achieve strategic ambitions and desired outcomes. Together, we are committed to help grow your business by delivering Experiences that Matter. Learn more at www.avaya.com.
ABOUT THE OPPORTUNITY
We are looking for a Software Developer with a solid technical background that is willing to build robust and maintainable applications using software development best practices. We value the willingness to build better software and to use proven design patterns and technology to solve real world business problems that we find every day in our projects.
You will work in very large projects initially, having the opportunity to also join smaller ones when needed. Although your end goal will be to deliver applications in the Call Center / Unified Communications space our projects usually involve interacting with multiple applications and technologies, such as CRMs, Service Desk Software and Analytics. Our main technology stack is Java based, but we also work with other stacks from time to time. Our team works directly with customers and you, as the software engineer, will eventually have some contact with customers through the Software Architect or Project Manager.
ABOUT THE RESPONSIBILITIES
- Develop software applications, usually in Java and Springboot, using design patterns and Object Oriented best practices
- Make sure that the code delivered meet the quality standards defined by the project, including unit testing coverage, static analysis checks and security scans
- Own the software deliverable, making sure it complies with the requirements both in functional as non-functional requirements
- Configure continuous integration, static code analysis tools and build process for your software, as well as installing and deploying the same in end customers or in cloud based solutions, automating the process as much as possible
- Collaborate and support other team members in your area of expertise
ABOUT THE REQUIREMENTS Requirements:
Working Environment and Conditions:
- Must be Graduated in Software Engineering, computer Science or similar.
- Must have Fluent oral and written English skills
- Must have 5+ years of experience working with the Java stack, preferable with Springboot
- Must be well versed in Object-oriented programming (OOP) and be familiar with the use of Design Patterns
- Must be familiar with writing Unit testing for the code provided, using JUnit or similar frameworks
- Must have experience writing and deploying software to cloud platforms, one of AWS, Azure or GCP
- Should have previous experience with Maven, Sonarqube and continuous delivery tools, such as Jenkins or Bamboo
- Should have prior experience developing with Springboot
- Should be familiar REST Services
- Should be familiar with messaging communication, having previously used JMS implementations
- Nice to have previous experience using Spring Cloud
- Nice to have previously worked with microservices and Containerization tools (Docker, Kubernetes)
- Nice to have familiarity working in Agile environments
- Nice to have industry certifications: Java Certified Programmer, Architect or similar; AWS, GCP or Azure certifications are also valued
- Nice to have prior knowledge of Call Center and Unified Communications space
- Development environment is composed of mainstream platforms and tools (Java, Spring Boot, Sonar, Jenkins) as well as Avaya development tools (Orchestration Designer, Breeze, Oceana, AES)
- Work is performed most of the time remotely, but occasional travel will be required - estimated at most 10% of the time
3 years experience at the Engineer Two level or 5 - 8 years total experience
Bachelor degree or equivalent experience
Master degree or equivalent experience