Job Description:
Principal Software Engineer
We are a high-performing agile scrum team responsible for the Contact Center platform and engineering, providing world-class capabilities and services that connect our associates to millions of participants, members, and customers. Our team is passionate about delivering exceptional experiences for our customers and associates through continual improvement.
The Skills You Bring
1. Bachelor's degree in Computer Science or equivalent
2. 8+ years hands-on experience as a software engineer
3. Proficient in Java, Ansible, Python, and experienced in developing APIs and micro-services
4. Experience with CI/CD pipelines and utilizing uDeploy and/or Ansible
5. Understanding of modern data architecture principals and patterns
6. Expertise with Agile (Scrum, Kanban) delivery and software design, development, test and operational automation
7. Understanding of enterprise-scale platform architecture which includes considerations for high availability and business continuity
8. Familiarity with Docker/Kubernetes and container-based development and deployment practices will be a plus
9. Working with Event Driven Architecture -- Kafka, Webhooks
10. Test Driven Development -- JUnit, Jasmine, Karma, Protractor, Jest, etc.
11. Familiarity with NoSQL (MongoDB, DynamoDB, etc) a plus
12. Ability to trouble-shoot complex data issues across the e2e technology stack
13. Either hands-on Azure / AWS experience or demonstrated desire to build cloud experience (e.g. certifications, training)
14. Demonstrated experience as engineer responsible for designing, developing, testing, supporting, and troubleshooting the Contact Center products
15. Proven ability to work independently and professionally in high pressure/visibility situations within tight timeframes
16. Self-starter, curious, collaborative, innovative, eager to learn and teach others every day
17. Experience with Data Engineering skillset would be a plus
The Value You Deliver
1. Write high-quality code for our applications that is reliable, scalable, and reusable
2. Understand the leadership vision and execute on that vision
3. Strengthen and promote the culture of innovation by setting examples
4. Find creative ways to get things done, and do them right
5. Foster a culture of best in class software engineering practices
6. Exercise a passion for keeping your knowledge up-to-date with the latest and greatest
7. Ensure the high level of integrity in the team
8. Take ownership and accountability for figuring out what needs to be done
Category:
Information Technology