As a Sr. Software Engineer, a Typical Day Might Include the Following:
- Design and present projects to improve current process and overall platform.
- Code and test projects.
- Manage time effectively working on one or more concurrent projects.
- Create automation to ensure quality.
- Deliver high quality, sustainable, maintainable code.
- Attend meetings and training as required.
- Works with system analysts and product management for the successful completion of a project.
- Leads team or mentors other developers as needed.
- Provides critical technical capabilities to the team and evangelizes those skills to others.
- Functions as a Technical or Team Lead as needed.
- Follow established department procedures, policies, and processes.
Specific projects you'll get to help us with
- Consolidating call history and call quality data in disparate data warehouses into regional big data stores, fronting the data with a web UI for internal use and a REST API for partner access
- Placing our SIP messaging into a time series database and provide an easy way to access the data for troubleshooting and call analysis
- Correlating telephone calls with infrastructure in a graph database to quickly identify root cause
- Moving our service settings and configuration from cluster-tied databases into a clusterless microservice, accessible via integrated UIs and APIs
- Integrating with third party TTS, ASR, and bot vendors to expand our customer's choices
- Expanding our API testing capabilities
- Familiarity with .NET Core
- Relevant experience with web development frameworks and packaging; Angular and Bower preferred
- Credible experience in the public cloud; AWS preferred
- Experience developing and deploying applications in Docker containers
- NoSQL experience with document, time series, and graph databases at big data scale
- Practiced understanding of microservices architecture
- Telephony experience, including VOIP, media streaming, SIP signaling, and RTP
- Familiarity with machine learning/artificial intelligence.