Principal Software Engineer, Voice

Outreach Seattle , WA 98113

Posted 5 months ago

The Role

Making and receiving voice calls are a key component of the Outreach product offering. Every month, Outreach customers complete more than 4 million calls with their prospects on our voice platform. The Voice Team is hiring software engineers to increase its momentum in this space. If you have experience building high availability voice communication systems with open source real-time communication software and commercial communications platform APIs, we'd love to talk to you about this opportunity.

If you want to spend all day designing CRUD UIs and APIs, this might not be the team for you. Telecom web development is a little different from other web development: The features we build are inherently heavy on state, complex in workflow, and include extensive third-party integrations. While a lot of telecommunications problems are "solved" in the realm of PBX software, our customers need more.

You'll be building tools to ensure calling is simple, reliable, and crystal clear; reducing the time our customers waste clicking around or performing repetitive actions so they can focus on what matters most - interacting with their prospects. To do this you'll have to get a little creative, build on top of a lot of existing technology, and stay focused on Outreach's core value proposition of revenue efficiency.

About the Team

On the Voice Team we:

Own features end-to-end, from the customer need all the way to the back-end implementation- Are highly collaborative and distribute technical leadership throughout the team- Do Agile development, with Kanban and regular retrospectives- Function in a highly progressive, quick-iteration environment focused on delivering consistent, incremental customer value- Have something new to demo every week!

The team's mission is to continually reduce the time spent by customer-facing representatives on data access and modification across different systems. We provide customers with meaningful and relevant data aggregated at their fingertips, to increase the time they can invest in adding value for their customers.

We're currently shoring up the core functionality of our telecom product, including better SMS support, call center functionality, improving monitoring, and improving ease-of-use. In the long term we want to give customers the same edge with calling and messaging that they have with email: The ability to optimize and constantly improve how they interact with customers. We will also face new challenges as we continue to scale out to ten times the volume of calling we have today and beyond. Together, these efforts present a diverse gamut of work that will help enhance Outreach's competitive edge by making our customers more effective.

To support data management and movement in the application, the team does work to enable our users to reliably and efficiently integrate, and consume and modify data sets from internal and external data sources. The core challenges in the space revolve around data translation between disparate data-sources, seamless data import and export capabilities, and providing performant and responsive workflows to update and sync data between different sources.

Your Daily Adventures Will Include

  • Working with commercial CPaaS APIs and open-source real-time communication software to manage calls, messages, and security

  • Finding ways to engineer high availability into a system that has lots of moving parts, not all of which are directly under your control

  • Working with stakeholders to make sure our customers have the tools they need to be successful on our platform

  • Finding quick ways to prototype and test possible solutions to large problems

  • Looking up and down the stack for the best return on investment for any given pain point

  • Working on one of the most visible parts of Outreach's product - to both our customers and the rest of our organization

  • Quickly start contributing

Basic Qualifications

  • Experience building on top of existing VoIP systems / solutions

  • Tech-stack overlap: We use Ruby on Rails on the back-end, and write front-end code with Javascript and React.JS. We use Mocha and RSpec for testing, and Circle CI for continuous integration

  • Familiarity with existing CPaaS providers and their APIs, including knowledge of open source VOIP systems

  • Experience with building high availability, distributed systems with a system-oriented architecture

  • Familiar with continuous-deployment projects

  • Experienced with cloud-based service applications

  • Enjoy building and consuming REST APIs

  • Previous experience with VoIP, specifically using WebRTC and SIP to facilitate real-time communication between users and with phone numbers across the globe

  • Experience with single-page application development in Javascript, particularly with React.JS

  • Willing to go above and beyond to help other team members

  • Ability to prioritize details along a path of iterative delivery

Why You'll Love It Here

  • 100% medical, dental, and vision coverage for full-time employees

  • Unlimited PTO (and people actually use it!)

  • 401k to help you save for the future

  • Company-organized and personal paid volunteer days to support the community that supports us

  • Fun company and team outings because we play just as hard as we work

  • Diversity and inclusion programs that promote employee resource groups like OWN (Outreach Women's Network)

  • A parental leave program that includes not just extended time off but options for a paid night nurse, food delivery, gradual return to work, and the Gottman Institute's Bringing Home Baby course for new parents

  • Employee referral bonuses to encourage the addition of great new people to the team

  • Plus, unlimited snacks and beverages in our kitchen

icon no score

See how you match
to the job

Find your dream job anywhere
with the LiveCareer app.
Mobile App Icon
Download the
LiveCareer app and find
your dream job anywhere
App Store Icon Google Play Icon
lc_ad

Boost your job search productivity with our
free Chrome Extension!

lc_apply_tool GET EXTENSION

Similar Jobs

Want to see jobs matched to your resume? Upload One Now! Remove
Sr Or Principal Software Engineer (JoinociNlsdst)

Oracle

Posted 2 days ago

VIEW JOBS 12/6/2019 12:00:00 AM 2020-03-05T00:00 Design, develop, troubleshoot and debug software programs for databases, applications, tools, networks etc. As a member of the software engineering division, you will take an active role in the definition and evolution of standard practices and procedures. You will be responsible for defining and developing software for tasks associated with the developing, designing and debugging of software applications or operating systems. Work is non-routine and very complex, involving the application of advanced technical/business skills in area of specialization. Leading contributor individually and as a team member, providing direction and mentoring to others. BS or MS degree or equivalent experience relevant to functional area. 7 years of software engineering or related experience. Oracle is an Equal Employment Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability and protected veterans status or any other characteristic protected by law. Oracle is an Affirmative Action-Equal Employment Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, sexual orientation, gender identity, disability, protected veterans status, age, or any other characteristic protected by law. Distributed Systems Primitives Team, Seattle, WA The Oracle Cloud Infrastructure (OCI) team can provide you the opportunity to build and operate a suite of massive scale, integrated cloud services in a broadly distributed, multi-tenant cloud environment. OCI is committed to providing the best in cloud products that meet the needs of our customers who are tackling some of the world's biggest challenges. We offer unique opportunities for smart, hands-on engineers with the expertise and passion to solve difficult problems in distributed highly available services and virtualized infrastructure. At every level, our engineers have a significant technical and business impact designing and building innovative new systems to power our customer's business critical applications The Distributed Systems Primitives Team at Oracle's Cloud is building new Platform-As-A-Service technologies from scratch that operate at high scale in a broadly distributed multi-tenant cloud environment. If you want to play with Multi-Paxos, TLA , Transaction management and Virtual Clock and build things instead of just operating it, it is the good place to be. We're looking for hands-on engineers with expertise and passion in solving difficult problems in distributed systems, and highly available services. If this is you, at Oracle you can design and build innovative new systems from the ground up. These are exciting times in our space - we are growing fast, still at an early stage, and working on ambitious new initiatives. An engineer at any level can have significant technical and business impact. As a Senior Member of Technical Staff you will own the software design and development for major components of Oracle's Cloud. We are early in the development lifecycle and some projects haven't started yet. This gives you the opportunity to build something from scratch We take a slower approach to ensure low latency and getting things done correctly. Our team has a super high impact, so design validity and a methodical approach are very important to us Minimum Qualifications: * 3 years experiences delivering and operating large scale, highly available distributed systems. * Strong knowledge of C, C or Java, and experience with scripting languages such as Python, Perl, etc. * Strong knowledge of data structures, algorithms, operating systems, and distributed systems fundamentals. * Working familiarity with networking protocols (TCP/IP, HTTP) and standard network architectures. * Strong understanding of databases, NoSQL systems, storage and distributed persistence technologies. * Strong troubleshooting and performance tuning skills. * Experience building multi-tenant, virtualized infrastructure a strong plus. Oracle Seattle WA

Principal Software Engineer, Voice

Outreach