AppFolio
Sr. Software Engineer - Voice Communications
Who we are looking for: We are hiring a Senior Software Engineer in our Platform Communications team to define and build out AppFolios Voice infrastructure and features, in addition to existing channels such as Email, SMS and others. Our Voice features will be widely used to power customer-facing features, including heavy AI integration with our AI agents. AppFolio supports a significant part of the real estate market in the United States, and our communications platforms are used daily to support and engage with millions of property managers and tenants. The first need for our communications voice features will be AI integration to help automate critical workflows in property management. A close second is a deeper integration between features in AppFolio and our customers current VoIP phone systems. We see a future where our Communications framework provides a unified, robust, and flexible communication methods in and outside of AppFolio powering a variety of applications, all enhancing the lives and businesses of property managers. This role is pivotal to the creation and adoption of such a system - ultimately unlocking tremendous potential for the real estate industry in the coming years. Responsibilities Build a deep understanding of our communications systems - enabling you and your team to build on top of and modify the existing architecture. Research and determine key architecture and design decisions to build a scalable, robust, yet simple Voice platform - this will involve some combination of leveraging our existing technology, refactoring existing systems, including off-the-shelf systems, or starting from scratch when it makes sense. Participate in customer research/discovery with Product to understand current problems, needs, and estimate technical feasibility of various potential solutions. Work in an agile fashion to turn a complex problem into deliverables and execute quickly while limiting work in progress. Maintain a high bar of engineering excellence, adopt our engineering best practices, provide and receive in-depth code reviews, and participate in healthy team debates. Share your expertise with teammates and across the organization. Ensure the communication methods that our infrastructure supports are tested with appropriate unit and integration tests to ensure uptime. Deliverables are well-instrumented with accessible queries and dashboards to drive decisions and measure progress. Participate in a high-performing, empowered team with mutual trust and respect. Take ownership of the problem space and learn from failures while celebrating successes. Design and implement systems capable of high concurrency and scale. Identify gaps and inefficiencies in the system; propose and implement solutions.
You know you're the right fit if
Experience with VoIP protocols such as SIP, WebRTC, RTP, etc. Experience integrating with voice communication SaaS providers (e.g., Twilio, Sinch, Vonage). Experience building features that integrate voice communication with phone networks as well as web and mobile apps, ideally in an agile SaaS environment. Experience building real-time communication systems at scale. Experience working on platform teams or building platform services whose customers are internal teams. Proven experience across all levels of the development stack. Proven experience with object-oriented languages (Python, Ruby, JS, Java, C#, etc.). Strong familiarity with REST APIs and web-based APIs. Familiarity with public cloud (AWS, GCP, Azure). Strong familiarity with Agile software development processes (Scrum or Kanban). Creativity and proactivity to solve complex problems without a roadmap. Learns new tech and leverages existing tech when its effective. Maintains long-term maintainability of the codebase and advocates for refactoring and code cleanliness. Ability to identify and resolve code smells through sensible refactoring.
Additional Skills and Knowledge
Experience with SMS and email protocols as well as providers such as Twilio and Sendgrid. 5+ years of experience in software engineering roles. Comfortable working with remote team members. Ability to balance business outcomes with technical goals. Ability to establish strong working relationships across other platform teams.
Location
Dallas, TX (Find out more about our locations on our site.) Compensation & Benefits
The base salary range for this role is $138,400 - $173,000. The actual base salary will be determined by factors such as skills, education, and experience. Regular full-time employees are eligible for benefits. About AppFolio
AppFolio is the technology leader powering the future of the real estate industry. For more information, visit appfolio.com. Equal Opportunity
AppFolio is an Equal Opportunity Employer. We value diversity and inclusion and do not discriminate based on race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, or veteran status. #J-18808-Ljbffr
Who we are looking for: We are hiring a Senior Software Engineer in our Platform Communications team to define and build out AppFolios Voice infrastructure and features, in addition to existing channels such as Email, SMS and others. Our Voice features will be widely used to power customer-facing features, including heavy AI integration with our AI agents. AppFolio supports a significant part of the real estate market in the United States, and our communications platforms are used daily to support and engage with millions of property managers and tenants. The first need for our communications voice features will be AI integration to help automate critical workflows in property management. A close second is a deeper integration between features in AppFolio and our customers current VoIP phone systems. We see a future where our Communications framework provides a unified, robust, and flexible communication methods in and outside of AppFolio powering a variety of applications, all enhancing the lives and businesses of property managers. This role is pivotal to the creation and adoption of such a system - ultimately unlocking tremendous potential for the real estate industry in the coming years. Responsibilities Build a deep understanding of our communications systems - enabling you and your team to build on top of and modify the existing architecture. Research and determine key architecture and design decisions to build a scalable, robust, yet simple Voice platform - this will involve some combination of leveraging our existing technology, refactoring existing systems, including off-the-shelf systems, or starting from scratch when it makes sense. Participate in customer research/discovery with Product to understand current problems, needs, and estimate technical feasibility of various potential solutions. Work in an agile fashion to turn a complex problem into deliverables and execute quickly while limiting work in progress. Maintain a high bar of engineering excellence, adopt our engineering best practices, provide and receive in-depth code reviews, and participate in healthy team debates. Share your expertise with teammates and across the organization. Ensure the communication methods that our infrastructure supports are tested with appropriate unit and integration tests to ensure uptime. Deliverables are well-instrumented with accessible queries and dashboards to drive decisions and measure progress. Participate in a high-performing, empowered team with mutual trust and respect. Take ownership of the problem space and learn from failures while celebrating successes. Design and implement systems capable of high concurrency and scale. Identify gaps and inefficiencies in the system; propose and implement solutions.
You know you're the right fit if
Experience with VoIP protocols such as SIP, WebRTC, RTP, etc. Experience integrating with voice communication SaaS providers (e.g., Twilio, Sinch, Vonage). Experience building features that integrate voice communication with phone networks as well as web and mobile apps, ideally in an agile SaaS environment. Experience building real-time communication systems at scale. Experience working on platform teams or building platform services whose customers are internal teams. Proven experience across all levels of the development stack. Proven experience with object-oriented languages (Python, Ruby, JS, Java, C#, etc.). Strong familiarity with REST APIs and web-based APIs. Familiarity with public cloud (AWS, GCP, Azure). Strong familiarity with Agile software development processes (Scrum or Kanban). Creativity and proactivity to solve complex problems without a roadmap. Learns new tech and leverages existing tech when its effective. Maintains long-term maintainability of the codebase and advocates for refactoring and code cleanliness. Ability to identify and resolve code smells through sensible refactoring.
Additional Skills and Knowledge
Experience with SMS and email protocols as well as providers such as Twilio and Sendgrid. 5+ years of experience in software engineering roles. Comfortable working with remote team members. Ability to balance business outcomes with technical goals. Ability to establish strong working relationships across other platform teams.
Location
Dallas, TX (Find out more about our locations on our site.) Compensation & Benefits
The base salary range for this role is $138,400 - $173,000. The actual base salary will be determined by factors such as skills, education, and experience. Regular full-time employees are eligible for benefits. About AppFolio
AppFolio is the technology leader powering the future of the real estate industry. For more information, visit appfolio.com. Equal Opportunity
AppFolio is an Equal Opportunity Employer. We value diversity and inclusion and do not discriminate based on race, color, religion, sex, sexual orientation, gender identity, national origin, age, disability, or veteran status. #J-18808-Ljbffr