Software Engineer II

Date:  Nov 6, 2023

Sao Paulo, SP, BR

Requisition ID:  35278

About Avaya

Businesses are built by the experiences they provide, and every day millions of those experiences are delivered by Avaya Holdings Corp. 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


Avaya is a global company, with teams around the globe and we deliver solutions worldwide with virtual teams across multiple countries and we are looking for a developer with a solid technical background that is willing to strive to build robust and maintainable code using software development best practices. We value the willingness to build better software, to use proven design patterns and technology to solve real world business problems that we find every day in our projects.


You will work mostly in small to medium projects, but occasionally in very large ones. 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. 

Must have Fluent oral and written English skills


  • Develop software applications (Java, JavaScript, Rust) 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



  •  5+ years of experience working with the Java stack, preferable with Springboot and developing with Springboot
  • Well versed in Object-oriented programming (OOP) and be familiar with the use of Design Patterns
  • familiar with writing Unit testing for the code provided, using JUnit or similar frameworks
  • Familiarity working in Agile environments
  • Experience with Maven, Sonarqube and continuous delivery tools, such as Jenkins or Bamboo
  • Familiar REST Services
  • Familiar with messaging communication, having pervious used some JMS implementation
  • Experience with microservices and Containerization tools (Docker, Kubernetes)
  • Nice to have JavaScript and JavaScript-frameworks experience such as Angular, Vuejs and/or React, previous experience using Spring Cloud, experience with Rust language and prior knowledge of Call Center and Unified Communications space



  • Experience with market leading public Cloud solutions (AWS, Google, Azure) is a plus.
  • Knowledge of software development life cycles.




  • Must have college degree in Software Engineering, Computer Science, Telecommunication Networks, Computer Science, Information Systems, or related field.
  • Nice to have industry certifications: Java Certified Programmer, Architect or similar; AWS, GCP or Azure certifications are also valued


Designs, deploys, and supports best in class software development processes and tools. May have a specific focus in one or more of the following: Develops tasks including module design and coding, debugging, and documentation of application programs and systems level programming; conducts systems programming and systems support activities; develops coding and design tasks to ensure software meets specified performance, scalability and reliability requirements; defines model interfaces/formats for performance simulation; defines the module specific requirements for software development projects; designs, analyzes, plans, and modifies network components supporting communication implementation activities; provides support to customer and account teams to understand customer requirements and responds to customer problems. Works only under general supervision. Self-sufficient, defines own objectives and goals. Provides technical solutions to a diverse range of difficult problems.


Avaya is an Equal Opportunity employer and a U.S. Federal Contractor. Our commitment to equality is a core value of Avaya. All qualified applicants and employees receive equal treatment without consideration for race, religion, sex, age, sexual orientation, gender identity, national origin, disability, status as a protected veteran or any other protected characteristic. In general, positions at Avaya require the ability to communicate and use office technology effectively. Physical requirements may vary by assigned work location. This job brief/description is subject to change. Nothing in this job description restricts Avaya right to alter the duties and responsibilities of this position at any time for any reason. You may also review the Avaya Global Privacy Policy (accessible at and applicable Privacy Statement relevant to this job posting (accessible at #LI-PF1