VoIP Engineer (Asterisk / FreePBX) — Moving Telephony Management to Git, End-to-End Project

#Hiring #VoIP #Remote #FreePBX #Kamailio #SIP #Linux #Remote #ProjectWork

VoIP Engineer (Asterisk / FreePBX) — Moving Telephony Management to Git, End-to-End Project

Office location: Fully remote, candidate location does not matter
Work format: Remote
Employment: Part-time / project-based
Rate: $15–30/hour net during the system takeover stage; afterwards, fixed payment for agreed project stages
Time zone: Europe, preferably within ±2 hours of CET

About the project

We operate a telecom business in France: paid consultation lines and office telephony with approximately 30 internal extensions.

The system has been running for many years, but it has been maintained by one person, is managed manually, and is almost undocumented.

The task is to take over the infrastructure and prepare it for transfer to a new specialist.

You will not be responsible for ongoing support after the project is completed. The team must be able to make planned changes through Git using a clear process, and all information must remain in the repository and instructions rather than in the engineer’s head.

Technology stack

  • Asterisk / FreePBX
  • Kamailio
  • FastAGI with routing logic through MariaDB
  • SIP trunks from several operators
  • fail2ban
  • FOP2
  • Zabbix
  • Proxmox virtual machines

Scope of work

Stage 1 — Take over the system

The current specialist will have limited availability.

Tasks:

  • take over access credentials, configurations, routing and information about typical incidents;
  • create a telephony map showing what works where and what each component is responsible for.

Stage 2 — Move management to Git

Tasks:

  • place FreePBX and Kamailio configurations, the dialplan and FastAGI scripts in Git with clear comments;

  • prepare a test environment for checking changes before production;

  • establish the following process:

    branch → test environment → deployment → one-command rollback

  • propose the appropriate level of automation;

  • write runbooks for typical operations and incidents for an engineer who is not familiar with the system;

  • eliminate the causes of recurring problems:

    • office IP addresses being blocked by fail2ban;
    • certificate failures;
    • disk space being filled by call recordings.

Acceptance criteria

A specialist who did not participate in the project must be able to perform the following tasks independently, using only the repository and instructions:

  • add an extension;
  • change an IVR;
  • upload a voice prompt;
  • restore the service after a simulated failure in the test environment.

This must be done without your assistance.

If the specialist cannot complete these tasks, the project will not be accepted and must be revised.

Requirements

  • 3+ years of production experience with Asterisk and FreePBX, including dialplan and AGI/FastAGI;
  • confident SIP diagnostics using sngrep and tcpdump;
  • experience with Linux, systemd, fail2ban, certificates and MariaDB;
  • Git is mandatory;
  • Ansible or another Infrastructure as Code tool is desirable;
  • the ability to write clear instructions is half of the expected result;
  • Kamailio experience is a strong advantage.

Terms and payment

The project will be divided into small parts with fixed prices and verifiable results.

Stage 1 is paid hourly.

The result of Stage 1 must include:

  • a telephony map;
  • a breakdown of the project into 6–10 parts;
  • a price for each part.

Completion of each part must be verifiable within 15 minutes.

The remaining parts will be paid after acceptance.

15% of the total amount will be paid after the first month of independent operation by our team.

All access credentials and secrets must be stored in the company’s storage.

All code must be stored in our GitLab from the first day.

Payment can be made to an EU legal entity against an invoice or directly to a freelancer.

Selection process

The selection process includes:

  • a short call;
  • 2–3 practical cases based on real incidents:
    • SIP trace analysis;
    • PBX failure;
    • fail2ban incident.

When applying, please include

  1. The most complex Asterisk case you have worked on and how you solved it.
  2. How you would organize FreePBX management through Git for a team.

Company: Eastern Country Digital Services s. r. o.
Contact: Telegram — @tarasenko_r

Is it just me, or does that not make any sense at all. FreePBX is a configuration wrapper for asterisk, creates dialplan files, but also maintains state through it’s own macros etc. It also talks to AstDB which is not in any configuration files.

You can’t ‘git’ that, nor can you make configuration changes solely with git. You can make asterisk dialplan changes with git however, but then it goes on to mention FastAGI with MariaDB.. you can’t git that. Git is a version control tool, not a FreePBX API tool.

It’s written like this is an epic quest but it’s just a tiny switch with 30 endpoints.

Aside from that, What version of Asterisk and FreePBX? is that USD CAD or some other $? and why $ if it’s France then surely that’s EUR - which smells.

What makes no sense to me is the rate. If there is someone on here that can do all that work, have all that knowledge for 15-30 per hour, DM me and I may hire you.

Very true, our first line rate is 46EUR (so about 55USD?) so it’s not something we’d consider, but I thought I’d comment anyway because it’s full of holes.

It is quite common to use Git for version control for non-source-code things. You could certainly use it to keep track of changes made to configuration files.

Well, I’m giving them the benefit of the doubt on this, anyway …

OP is confounding but trying to give benefit of the doubt to potential non-English as primary language HR :slight_smile: and also noting their cross-post to the FPBX forums with similar concerns echo’d there: [HIRING] Russian-Speaking VoIP Engineer — Asterisk / FreePBX / Kamailio, Remote Project - Jobs - FreePBX Community Forums

Anyhow, more interesting IMO is the version control config convo :cowboy_hat_face: etckeeper comes to mind… native to Debian and great for raw Asterisk configs, natch, but even when said configs are changed by some external process e.g. FreePBX it can often be fruitful to see exactly what changed in the generated configs (which go beyond Asterisk into many other system processes.)