Senior/Principal Software Engineer at Interactions
Who is Interactions?
Interactions, LLC is the world’s largest independent AI company. We operate at the intersection of customer experience and AI – two of today’s most innovative and dynamic industries. Since 2004, we’ve helped leading companies like MetLife, Citi, Shutterfly, and LifeLock have millions of successful conversations, resulting in saving operational cost and increasing productivity.
Interactions’ 5-year vision is to accelerate a transition from today’s frustrating and uninspired customer service experiences into amazing conversational engagements! Allowing customers to communicate in their own words and on their channel of choice, to accomplish tasks, all without having to go through an agent. In doing this via our conversational AI engine, our customers benefit from dramatically improved customer experience and increased customer engagement, while also saving significant and demonstrable operational expenses.
As a member of one of our Technology teams, you will contribute to building solutions that use natural language processing, cognitive computing, and artificial intelligence applications or the frameworks and infrastructure that support them.
The Principle Software Engineer plays a key role in designing and implementing components and features of the Core platform. The Principle Software Engineer has a leadership role on the Platform team and must work in close collaboration with QA, Research, DevOps, Product Owners, Professional Services, and in some cases third party software vendors. In this role you will be at the center of our state-of-the-art and patented technology suite where we combine our best of breed AI technologies with human intelligence in real time and in scale.
Essential Job Functions*:
- Be a key contributor of a technical team responsible for a massively scalable, highly available SaaS platform.
- Responsible for troubleshooting and fixing issues.
- Bring new technical ideas, in keeping with latest industry trends, to fruition by prototyping and then incorporating it into the Platform.
- Provide technical leadership for more Jr. level members of the team.
- Participate Lead and participate in daily Scrum activities to closely monitor work against schedules and deliverables, providing progress updates and reporting any issues or technical difficulties.
- Must be able to Participate in on-call rotations.
Preparation, Knowledge, Skills and Abilities:
- Bachelor’s Degree in Computer Science or similar field.
- Ten to fourteen years of relevant, demonstrable experience including hands-on coding in backend Java and other JVM based languages.
- Must have exposure to Node and Python related technologies.
- Must have experience with designing, building and troubleshooting large scale highly concurrent and multi-threaded/multi-process systems.
- Minimum of six years working on mission critical, 24x7, high performance and scalable systems.
- Minimum of six years working on J2EE and asynchronous messaging based technologies and distributed systems.
- Minimum of four years working on SQL, databases and other persistence technologies using Java.
- Experience working with all phases of the Software Development Lifecycle – ranging from architecture and design to implementatiion and testing.
- Significant and demonstrable experience with test-driven development alongside use of automated test frameworks including Unit and Integration testing.
- Experience working in an environment where products/features/components are delivered within specific time-scales.
- Prior experience with architecture and design of components and features that are part of large enterprise architectures.
- Experience/ability to rapidly and effectively understand and translate product/feature requirements into technical solutions and deliverables.
- Experience with profiling and troubleshooting large scale, concurrent and multi-threaded JVM based languages (Java).
- Must have strong testing, debugging and problem solvingproblem-solving skills.
- Must be able to write concise yet comprehensive and clear technical documentation.
- Strong Must have strong communication skills and the ability to motivate, collaborate and potentially lead a large team with a variety of skills and experience. collaborative and teaming skills.
- Master’s Degree in Computer Science or similar field.
- Prior experience with AI voice technologies.
- Enjoy coding and solving challenging and complex technical problems.
- Prior experience as technical lead on highly visible features and projects
Why Work at Interactions?
We've created a culture of people who are dedicated to helping each other and the company succeed. We take time to celebrate wins and recognize accomplishments. Whether it’s a seasonal event or friendly competition, we’re always thinking of new ways to have fun.
Our team's health and well-being is important to us. In addition to a full suite of benefits, we offer 5 weeks of time off with pay, 401k matching, paid parental leave and flexible work schedules. We are all committed to the company’s success by being valued shareowners and are incentivized through individual performance and company results. Come join us!
Interactions is an equal opportunity employer and does not discriminate on the basis of race, color, religion, sex (including pregnancy, sexual orientation, and gender identity), national origin, marital status, age, disability or protected veteran status, or any other characteristic protected by law.