This is a hands-on generalist role. A single ticket can involve a desk phone, a PBX, a SIP proxy, a carrier API and the billing database, and you will be expected to work across all of them.
Overview
About the role
- Work is assigned through tickets and short Slack requests. You get the context you need and are expected to work independently.
- You start with ticket escalations, customer calls and migration work. Changes to production infrastructure are reviewed with the lead engineer until you know the environment.
- Work is documented. Runbooks exist for most systems, and you keep them current as you go.
- The environment mixes current tooling with older Linux versions still in production. You support both.
- AI coding agents (Claude Code, Codex and similar) are part of the daily workflow, and the runbooks are written for them as much as for people. Clear, precise instructions to the agents are part of the job.
Environment
The stack you use
- PBX platforms
- Thirdlane (Asterisk-based, multi-tenant) and a fleet of per-customer 3CX servers
- SIP edge
- Kamailio with STIR/SHAKEN signing and least-cost routing to carriers
- Carriers
- Bandwidth and Vitelity: numbers, porting, E911, A2P messaging
- Phones
- Yealink and Polycom, autoprovisioned, with RPS redirects
- Cloud
- AWS (EC2, RDS, Route53), Docker, GitHub Actions
- AI products
- Voice and chat agents in production on .NET and PostgreSQL, plus LLM integrations into the phone system
- Back office
- Salesforce, a PHP CRM, Go billing microservices, a Perl and Java customer portal, QuickBooks
- Messaging
- SMS and MMS for a softphone app over carrier webhooks; a fax platform
- Languages
- Python, Go, Perl, PHP, Java, C#, SQL, bash
Responsibilities
What you will do
Support and SIP troubleshooting
- Escalations across Asterisk-based and 3CX systems: one-way audio, registration failures,
403/488/503on outbound, NAT, codec and DTMF problems, trunk issues. - Read SIP traces (sngrep, tcpdump, Wireshark) and identify where a call failed.
- Take customer support calls: diagnose the problem with the caller, resolve it, and send a clear written follow-up.
- Phone provisioning for Yealink and Polycom, including templates and RPS redirects.
- First-pass triage of toll-fraud alerts from carriers. STIR/SHAKEN signing and routing on Kamailio.
Migrations
- Migrate customers from our legacy PBX to the current platform: extensions, phones, numbers, call flows, voicemail.
- Audit the source tenant, build the target, re-point the phones, test calls both ways, and walk the customer through what changed.
- Migrations are scripted and agent-assisted; you run the tooling and verify the result before cutover.
API integrations
- Carrier APIs: Bandwidth (number ordering, 911 provisioning, A2P messaging) and Vitelity.
- PBX APIs: 3CX and Thirdlane.
- Glue between Salesforce, the CRM, billing and the customer portal.
- SMS and MMS webhook handling.
- Small scripts and services, mostly Python, shipped as cron jobs or containers.
Operations
- Patching, monitoring, alerting and backups across a fleet that spans a variety of Linux versions.
- Docker on the servers you support.
- AWS changes (EC2, RDS, Route53), in pairing with the lead engineer at first.
Requirements
What we need
Must have
- Hands-on Asterisk: dialplan, SIP endpoints, CDRs, logs. Any flavor counts: FreePBX, Thirdlane, Issabel, vanilla. Typically two or more years supporting business VoIP systems on your own.
- SIP fundamentals: INVITE/REGISTER flow, SDP, RTP, NAT, response codes. Can read a trace in sngrep or Wireshark and say which leg broke.
- Basic networking: IP, NAT, firewalls, DNS, VLANs, TCP vs UDP, TLS. Enough to tell a phone problem from a network problem.
- Linux administration: services, logs, bash, cron, basic SQL.
- Understands APIs: can read API docs, call a REST endpoint with auth, parse JSON, and write a small Python script around it. You do not need to be a developer.
- Customer communication by phone. Fluent spoken and written English, calm with a frustrated caller, can walk a non-technical office manager through a fix and write a clear follow-up.
- Works with AI coding agents. Claude Code, Codex or equivalent, daily. Writes a precise brief (what is broken, what is already known, what done looks like), reads the output critically and checks it before applying.
- Git, short clear documentation, and at least four hours overlap with US Eastern business hours.
Nice to have
- 3CX administration.
- PBX migrations: moving tenants, phones and numbers between platforms.
- Kamailio or OpenSIPS. STIR/SHAKEN.
- AWS (EC2, RDS, IAM), Docker, Terraform, Kubernetes, GitHub Actions.
- US carrier work: Bandwidth or similar, E911, number porting.
- Reading Perl, PHP, Go or Java well enough to patch it.
- Toll-fraud or IRSF investigation experience.
The bar is solid mid-level, not senior. If you can trace a SIP failure through a packet capture, explain it to the customer on the phone, and brief an AI agent precisely enough that it fixes the right thing, this will be a good job. If you need every ticket fully specified before you touch it, it will be a hard one.
Engagement
Engagement details
- Remote contractor position. Around twenty hours a week to start, spread across the US work week, with the option to grow to full-time.
- At least four working hours each day inside US Eastern business hours, so escalations are handled the same day.
- No on-call rotation. Any after-hours work is agreed in advance and billed as hours.
- Occasional scheduled phone meetings with a customer may be needed to troubleshoot complex cases. These are planned in advance and count as working hours.
- Tools: helpdesk and Jira for tickets, Notion for documentation, GitHub for code.
- Compensation: hourly rate, based on experience. Please state your rate in your application; rate and hours are confirmed by email before the technical exercise.
Application
How to apply
No cover letter needed. Send a short email with:
- Your hourly rate, time zone and the hours you can commit.
- One SIP problem you solved end to end, in your own words. Where it broke, how you found it, what you changed.
- One API integration you built, and what it talked to.
- One brief you gave an AI coding agent, a short excerpt of its response, and how you checked or corrected the result. Remove customer details, credentials and proprietary information.
- One ticket reply you wrote to a customer. Anonymize names, numbers and anything proprietary; we want to see how you write, not who you wrote to.
Hiring process: rate and hours are confirmed by email first. Shortlisted candidates complete a short technical exercise (a packet capture to read and a small API task, unpaid, under two hours), followed by a twenty-minute phone call in English that includes a short role-play helping a non-technical customer troubleshoot a phone problem.