Company Description Carolina Digital Phone Inc. provides geo-redundant, cloud-based phone systems that help businesses manage communications more efficiently and reliably. The company replaces traditional on-premise phone equipment with a feature-rich cloud-based PBX, enabling desk phones and smartphones to work together through browser and mobile app management. Its solutions include advanced features such as call auto-attendants, call queues, and call groups, supporting teams that work both on-site and remotely. By delivering IP-based Fortune-500 PBX capabilities with IP phones as the primary hardware, Carolina Digital Phone enables organizations of all sizes to implement robust hosted VoIP communication and keep mobile workers connected.
Role Description This is a full-time, on-site Software Engineer role based in Greensboro, NC. The Software Engineer will design, develop, and maintain cloud-based VoIP and PBX applications, APIs, and integration services that support Carolina Digital Phone’s communication platform. Day-to-day responsibilities include writing clean, testable code; troubleshooting and resolving software issues; implementing new features; and optimizing performance and reliability of distributed systems. The role will collaborate closely with product management, network engineering, and support teams to translate business and customer requirements into technical solutions. The Software Engineer will also participate in code reviews, contribute to technical documentation, and help improve development processes and tooling.
Qualifications
- Strong proficiency in one or more modern programming languages (such as Java, C#, Python, JavaScript/TypeScript) and familiarity with object-oriented and/or functional programming principles.
- Experience developing and maintaining web services or APIs (RESTful or similar), including integration with third-party systems.
- Knowledge of cloud-based architectures, distributed systems, or microservices, preferably in a SaaS or real-time communications environment.
- Understanding of databases (SQL and/or NoSQL), data modeling, and basic query optimization.
- Familiarity with version control systems (such as Git), CI/CD pipelines, and standard software development tools.
- Comfort working in Linux or similar server environments and basic knowledge of networking concepts; experience with VoIP/SIP or telephony systems is a strong plus.
- Bachelor’s degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience.
- Effective communication, collaboration, and problem-solving skills, with the ability to work in a cross-functional, on-site team environment.
- Experience with Agile or iterative development methodologies and an interest in learning new technologies relevant to cloud communications.