2018 – 2022 · Montpellier, France · Hybrid
Developer — telecoms
Astek — Leading French telecommunications and digital services provider
Assigned in early 2018 to the version then under way on the application monitoring quality of service for the VoIP offerings, ticket handling having become efficient enough to free up time. The version had been in build for a year, its budget was spent, and February's acceptance testing had raised more than a hundred faults. The initial contribution was peripheral: a scheduled shell script handling file imports and their statuses in an Oracle table, and working through test feedback.
The July 2018 release failed, the developer in charge of the package leaving the project. Called in as reinforcement by the project manager: reverse-engineering the release script in production — some fifteen chained steps, backup, deployment, checks, SQL scripts and vendor command-line calls — which none of the successive developers had designed. The package installed once the point of failure was identified. Forty production faults were opened between that release and the October re-delivery; the version would cost more than two hundred days beyond the four hundred and fifty budgeted.
From then on, the application's designated developer, paired with a Netrac developer until version 2.7, then alone through to 2.12 and to the departure in 2022. Three application scopes carried in parallel: the VoIP application, the traffic monitoring application, and the IP monitoring application until it was shut down in 2020 — the client, quoted sixteen hundred days for a rebuild, having preferred to drop the vendor and build its own open-source solution.
Achievements
- 15 steps chained by the release script
Release rescued by reverse-engineering the deployment script
Backup, deployment, checks, SQL scripts and vendor command-line calls, in a script nobody had mastery of any more — the successive developers had inherited it without designing it. Reverse-engineered in production after the developer in charge walked away, through to the package actually installing.
- 40 faults opened between the release and the re-delivery
Version 2.4 taken back in hand after a failed release
Delivered in July 2018, re-delivered in October with the fixes. Deep enough a recovery for the version to hold in production; the planned rebuild of that monitoring scope was never seen through.
- 9 versions delivered, from 2.4 to 2.12
Versions of the VoIP application, 2018-2022
New monitoring axes on call records, monitoring of a new offering, monitoring of third-party network operators in four batches, rework of the existing axes and processing optimisation, emergency services monitoring. Co-built through to 2.7, then carried alone.
- 3 final versions before the application was shut down
End of life of the IP monitoring application
SNMP scripts adapted to the collection tables of new equipment, SQL views and the Java configuration import programme changed accordingly. The application was shut down in 2020: the client, quoted sixteen hundred days for a rebuild, preferred to drop the vendor and build its own open-source solution.
- 2 forty-day versions, in 2020 and 2021
Versions of the traffic monitoring application
A third application scope carried alongside the other two, at one version a year.
- 40 pages of production operating procedure
Fixing the vulnerabilities raised by the 2019 security audit
Remediation carried out in production, with the detailed operating procedure it required. On top of the continuous flow of fixes and small changes delivered across the three scopes.
Mastering and documenting the vendor's command-line mode
This mode allows component import and export, service configuration and restarts to be scripted without going through the interface. These functions appear neither in the vendor's documentation nor in its training: learned empirically, from the wrappers found in existing scripts and from vendor support interventions, then documented for the support team.
Integration work on the collection chain
An MQ Series message collection utility in C++, shell import scripts, CFT transfers and the associated interface contracts, configuration of aggregation calculations, thresholds and alarming, and presentation of the aggregated data in Business Objects.
Skills applied
- AWK
- Bash
- Business Objects (BO)
- C/C++
- CFT
- Java
- KSH
- MQ Series
- Netrac
- One Automation
- Oracle
- Perl
- Reverse engineering
- Security vulnerability remediation
- SNMP
- Talend