MRA-listed EBS Solution Provider SN 95 · Codeblix Ltd
Monthly Elixir development

Hire Elixir developers on a monthly basis with a clear receiving check

Discuss a monthly Elixir development engagement with Codeblix for an existing application or a defined build. Send the application inventory and first delivery milestone so we can review the work, agree the required allocation and provide a quotation. Use the recovery exercise below to make one important acceptance decision concrete: what happens when a child process fails, when repeated failures stop its group and who receives the recovery evidence.

Agree allocation, review cadence and the first milestoneExercise isolated failure and a bounded restart allowanceReceive the change, incident evidence and recovery runbook
Supervision recovery demo Recovery demo shows Connector, Normalizer and Delivery at generation 1 with local counts 3, 7 and 2 under an explicit two-restart, five-second policy
Supervision acceptance demo: inspect three initial child generations and their local counters.
Outcome first

Receive more than a list of hours.

Connect each agreed delivery item to a source revision, an observable behavior and the person responsible for accepting it.

01

Assign a bounded piece of application ownership

State which application, supervisor subtree or service the engagement covers. Identify the technical lead, release owner and business-data owner. The first monthly milestone can be a reviewed recovery change with a reproducible fault case, rather than an open-ended promise to improve reliability.

02

Separate a healthy process from correct business data

In SR12, Normalizer begins with local count 7. Its first replacement starts at 0 while Connector keeps count 3 and Delivery keeps count 2. Use that visible difference to ask where your application stores recoverable progress, which external actions need reconciliation and who checks the receiving records.

03

Agree when the team should stop automatic recovery

The exercise permits two automatic restarts inside five virtual seconds. A third fault at the same virtual time stops the whole group. The receiving view retains the events and asks for a runbook check before a manual start. Translate the example into an application-specific escalation and support agreement.

Three children, one recovery boundary

Give the monthly handover a failure case it can answer.

The SR12 exercise starts Connector, Normalizer and Delivery with separate generations and local counters. Fail Normalizer, inspect the replacement, then repeat the fault until the group stops. A receiving acknowledgement enables a deliberate manual recovery while the incident history stays visible.

Recovery acceptance workspace One fault replaces Normalizer from G1 to G2 and resets its local count to 0 while Connector and Delivery stay at G1
Observe the isolated Normalizer replacementAn isolated Normalizer failure leaves its siblings in their original generations.
Recovery acceptance workspace Receiving workspace shows 0 of 3 children running, two automatic restarts, a stopped group and a checked acknowledgement enabling Start reviewed group
Receive a stopped group before manual recoveryReview the stopped group and incident evidence before starting a fresh generation.
A concrete first milestone

Bring the recovery case into your hiring brief.

Open the browser exercise and download its twenty acceptance cases. Ask the development scope to connect this behavior to the installed Elixir/OTP application, durable business data and the actual deployment process.

01

Run the recovery acceptance exercise

Follow child generations and local counters through an isolated fault, a repeated-failure stop and a reviewed manual start. The virtual clock makes the restart window reproducible; Reset returns the synthetic example to its initial state.

Open the supervision recovery demo
02

Read the Elixir supervision reference

Elixir documents supervisor strategies, child restart types and restart limits. Review these options against the versions installed in your application rather than treating an example policy as a universal setting.

Elixir primary reference: Supervisor
03

Check the OTP escalation boundary

The Erlang supervision reference explains how exceeding restart intensity terminates the supervisor and its children. Use the actual supervision tree to identify what the next level does and who receives the resulting incident.

Erlang/OTP primary reference: supervision
04

Keep a receiving API contract alongside recovery work

If the Elixir application exchanges commands with a separate NestJS service, name both implementation owners and agree their acceptance evidence. The API response, a worker replacement and the resulting business record are separate things to verify.

Review a separate backend API consultation
From monthly brief to accepted change

Make responsibility visible throughout the engagement

A monthly allocation needs an agreed backlog, access boundaries, review evidence and someone authorised to receive the work. Establish these before development begins.

01

Submit the application and monthly brief

List the Elixir, Erlang/OTP and Phoenix versions where used, dependency lockfile, repository owner, deployment target and present support arrangement. Describe the change backlog and priority outcome. Request a written quotation identifying proposed allocation, responsibilities and the first review milestone.

02

Agree working capacity and access

Confirm the hours or delivery capacity, collaboration window, meeting cadence, approver and treatment of unused or additional time. Supply authorised development and staging access through your existing access process. Decide whether discovery, implementation, QA and release work share the allocation or receive separate estimates.

03

Map the recovery boundary

Identify the children in the relevant supervisor group, their start order, restart type and state dependencies. SR12 uses three permanent children and an explicit one_for_one policy. Agree the installed behavior with the developer and record which dependencies should remain running when the selected child fails.

04

Test the isolated fault and state reset

Fail Normalizer once in the exercise. Its generation changes from G1 to G2 and its local count becomes 0; the two other generations stay at G1. For the application milestone, test this boundary in staging and inspect durable records separately so a process restart is not mistaken for a completed business operation.

05

Exercise escalation and reviewed recovery

Repeat the failure until SR12 stops the group. Advancing the virtual clock does not restart that stopped group. The receiver checks the example runbook, then starts fresh generations explicitly. Define the real alert, escalation owner, data reconciliation and authorised recovery procedure in the delivery item.

06

Close the month against accepted work

Receive the source revision, completed cases, known open items and operational notes. Record what the technical receiver accepted and which backlog items carry forward. Agree the next allocation, release responsibility, notice terms and support coverage before renewing the engagement.

Planning area 01

Put the commercial terms in the quotation

  • Ask Codeblix to assess the application and confirm the allocation available for the requested scope. Agree the start date, technical responsibilities, monthly fee basis, included work, payment schedule and any minimum term directly in the quotation.
  • Name the person who prioritises the backlog and the person who accepts a completed item. Specify how extra requests, urgent incidents, absences, changes in allocation and end-of-engagement handover are handled. A recurring arrangement should have a clear notice and renewal process.
  • Give the same sanitized repository inventory and first-milestone case to each provider. Distinguish an engineer joining your existing delivery process from a team responsible for an entire outcome; price and management responsibilities depend on that choice.
Planning area 02

Define data, integrations and release ownership

  • Identify databases, queues and external services used by the selected application area. Document direction of data flow, authentication ownership and the point at which the receiving system considers work committed. Include any required migration, reconciliation or compatibility work explicitly.
  • Agree a staging environment, representative synthetic fixtures and the acceptance evidence for each failure case. SR12 is a browser exercise for the recovery discussion; implementation acceptance should include the installed application and its persistent data under controlled failures.
  • Separate development delivery from hosting and operational support. Record who deploys, the rollback checkpoint, monitoring access, support hours, response expectations and who authorises recovery outside normal working time. Include code, lockfiles and the receiving runbook in the handover.
Your operating specification

Six records for a monthly Elixir engagement

Bring an application inventory and a small recovery case that a technical receiver can check.

Keep the monthly agreement, child state and incident evidence connected without treating a process counter as a durable business record.
RecordExample inputsRequired output and control
Engagement allocationMonthly capacity, review cadence, scope owner, fee basis and notice termsConfirm the quotation and responsibility for prioritising and accepting work.
Application inventoryElixir/OTP versions, lockfile, source revision, environment and release ownerLocate the code and dependency boundary that the first milestone changes.
Supervisor policySR12; one_for_one; permanent children; two restarts in five virtual secondsMake the example allowance explicit and review actual production settings separately.
Child observationConnector G1/count3; Normalizer G1/count7; Delivery G1/count2Record the replacement generation and which in-memory values are reset.
Fault eventVirtual time, failed child, automatic restart or stopped groupRetain the incident sequence and check what the surrounding supervision tree does.
Receiving acknowledgementRunbook check, data reconciliation, escalation owner and manual-start eventReceive the change with its evidence and make recovery responsibility explicit.

Start SR12 at virtual time 0 with generations G1/G1/G1. Fail Normalizer once: only it becomes G2 and its count resets from 7 to 0. A second fault replaces it again; a third fault at time 0 stops all three children because the allowance is two restarts. Advancing six seconds leaves that stopped group stopped. Acknowledge the receiving check and start the reviewed group: generations advance, local counters reset and the original fault history remains.

Compare before you commission

Request the same first-milestone evidence from each provider.

These primary offers describe different engagement models. Use your application inventory and recovery case to ask what delivery, technical review and operational handover each quotation includes.

Primary provider offers accessed 1 November 2026.
OptionPublished focusAsk in your demo
ElixirExpertsIndividual developers, development teams and extended in-house delivery, with hiring and project-quote enquiries.Who receives a recovery change, and which runbook and state checks accompany the monthly report?
BorderlessMindDedicated monthly, time-and-material and other hiring models, with candidate selection and contracting steps.How are the allocated hours connected to accepted application changes and unresolved incidents?
SerokellElixir consultation, custom applications, dedicated teams and application maintenance with a quote enquiry.Does the scope include the supervision boundary, persistent-state review and receiving evidence?

Choose an engagement with a named scope owner, a receiving technical lead and explicit commercial terms. Confirm the actual allocation and first delivery item with Codeblix before work begins.

Category reference: Elixir Supervisor reference. Use SR12 and the checklist as project discussion inputs. Agree application-specific acceptance in the development quotation.

Industry context

Connect development scope to the receiving system

Keep each application’s owner and acceptance boundary visible when several services exchange data.

Browse application development solutions
Frequently asked questions

Questions to settle before the monthly engagement

Use these answers to prepare the application brief and a focused quotation request.

What should I send with a monthly Elixir development enquiry?

Describe the application, current versions, repository ownership, hosting arrangement and the backlog you want addressed. Include a sanitized failure example, the first desired milestone and your technical receiver. State the capacity and collaboration window you need so Codeblix can review allocation and quote the work.

How are the monthly fee and allocation agreed?

The quotation should state the capacity or hours, work categories, fee basis, review cadence and treatment of additional requests. Confirm availability, start date, payment schedule, notice and renewal terms directly. Application assessment may be needed before implementation work can be estimated responsibly.

Can the engagement cover an existing application?

Discuss maintenance, scoped changes or a defined new build using the actual source and dependency inventory. Establish authorised access, a reproducible staging environment and the present release process. Identify any discovery, upgrades or data migration needed for the requested work.

What is the first milestone shown on this page?

The SR12 recovery exercise turns a process-failure concern into a receiving case. It tracks three child generations, replacement of Normalizer, a bounded restart window and a stopped group requiring acknowledgement before manual recovery. Use its cases to describe the implementation evidence you want.

What happens to the example local count after a restart?

Normalizer begins with count 7 and its replacement begins at 0. Connector and Delivery retain their example values after that isolated replacement. The milestone must separately establish where the real application stores business progress and how the receiver reconciles external effects.

Does elapsed time automatically recover the stopped group?

In SR12 it does not. After the third fault exhausts the allowance, advancing the virtual clock leaves all children stopped. The receiving check and explicit manual-start action are required. Agree actual escalation and recovery behavior against the installed supervision tree.

How will integration and migration work be handled?

List the databases, queues, API consumers and external owners affected by the delivery item. State the required data direction, credentials owner, compatibility rules and reconciliation sample. Include migration, dependency updates and other-system changes explicitly in the agreed backlog or estimate.

What should I receive at the end of the month?

Receive the accepted source revisions, completed cases, release notes, recovery instructions and remaining backlog. Record the receiver’s decisions and any unresolved incident. Confirm future capacity, release responsibility, support coverage and notice terms before the next period.

Scope your project

Give the monthly engagement a clear first receiving check.

Share the application inventory, the required allocation and a recovery concern with Codeblix. Request an Elixir development quotation with a bounded milestone, review evidence and an agreed operational handover.