The role of software developer in the Technology Advancement Group(TAG) will be to create innovative showcase applications that highlight Nuance's leadership in Conversational AI technologies and solutions. This role will work with the development team lead to produce high quality code and think outside the box to achieve TAG's mission.
Principal duties and responsibilities:
- Actively participate as a scrum team member in all phases of the development process
- Software design, development, unit testing, testing and test-automation
- Contribution to requirements engineering and top-level design
- Design, implement and execute unit tests for code modules or components to ensure high quality code releases
- Perform peer design and code reviews
- Modelling, programming, testing, test-automation, continuous integration and contribution to software release activities
- Enhance, extend, and maintain test automation libraries and frameworks
- Produce and maintain high quality, scalable enterprise software
- Participate in functional and technical reviews/sprint reviews
- Effectively work with multiple stakeholders and teams located in different geographical locations
- Perform tasks related to securing and keeping the products, tools, and processes that you are responsible for securing
Knowledge, skills and qualifications
Education: undergraduate degree in computer science, software engineering or a related field
Minimum years of work experience: 2+ years
- Possess a strong desire to learn and contribute solutions and ideas to the overall team.
- Ability to communicate effectively verbally and written.
- Programming background in one of lower level programming language: C, C++, C#, JAVA, Go, …
- Programming background in one of the popular web frameworks: React, Angular, Vaadin, …
- Positive attitude and able to work well with others.
- Ability to learn new concepts, architectures, APIs, etc as needed.
- Professional experience collaborating in a team environment
- Passion for creating and refining efficient processes
- Comfortable communicating with, presenting to, and receiving input from a variety of people, including senior management
- Display a solid understanding of theories/practices utilized by other disciplines outside primary area of expertise.
- Ability to communicate with all levels of management on courses of action using both written and verbal methods.
- Effectively work on cross-functional teams and facilitate with guidance.
- Must be able to provide solutions that reflect understanding business objectives and cost implications.
- Knowledge of microservices
- Knowledge of Cloud Native tool and architecture (e.g. CI/CD, Docker, Kubernetes, , …)
- Knowledge of communication protocols: HTTP1.1, HTTP2, GRPC, WebSocket