Skip to content
Back to skills

Skills

DevOps & Server Administration

DevOps brings together the practices that make a change reproducible from the code repository through production operations: continuous integration, testing, build, deployment, configuration, secrets, backups, monitoring, and rollback.
Technical skillsBeginner

Definition

DevOps brings together the practices that make a change reproducible from the code repository through production operations: continuous integration, testing, build, deployment, configuration, secrets, backups, monitoring, and rollback. The objective is not merely to automate a command. The gap between the tested environment and the one actually serving users must be reduced, and sufficient evidence retained to understand a failure.

My experience is primarily on managed platforms. Odoo.sh provides development, staging, and production environments, backups, and ERP builds; Vercel handles Next.js application deployment; GitHub Actions runs portfolio checks. I can use and connect these services, read their logs, and prepare a cutover. I distinguish this practice from deep infrastructure administration: I do not yet claim advanced mastery of Kubernetes, networking, infrastructure as code, or operating a production cluster.

Software supply-chain security is part of the skill: image versions, dependencies, provenance, secrets, and pipeline permissions. A backup is useful only when it represents a consistent state and can become a restoration point.

Related news

Docker details the role of hardened images in the software supply chain

Docker describes hardened images as minimal, continuously patched foundations with verifiable metadata. This development puts software supply-chain security, SBOMs, and image provenance at the center of DevOps practice.

Read the source: Docker

Evidence

Preparing the Odoo 19 cutover and rollback

The ERP migration used Odoo.sh environments connected to the GitHub repository. I made adaptations on dedicated branches, ran builds, read migration logs, and restored realistic production copies for acceptance testing. Before cutover, I verified that a complete backup combined the PostgreSQL database and filestore from the same state, prepared the order for restoring integrations, and defined rollback to the last stable state if a critical anomaly prevented recovery.

Result — Production resumed after the planned outage, and no rollback was required. The scenario was nevertheless ready, allowing the cutover to be treated as a controlled operation rather than a bet on the first startup succeeding.

Enterprise ERP migration from Odoo 16 to Odoo 19

Building a delivery chain for the corporate website

The corporate website is version-controlled on GitHub and prepared for Vercel deployment. I integrated environment variables, quality checks, component and API tests, and Playwright journeys. Choosing Vercel provides a preview and production chain suited to Next.js, but I keep the architecture standard enough to avoid making the platform impossible to leave if requirements change. Release-candidate acceptance testing must precede cutover, and connected services must be checked after deployment.

Result — The project already has a reproducible pipeline with preview deployments and a foundation of checks for its future production release. The platform choice continues to be evaluated by its cost-to-service ratio rather than treated as permanent.

Corporate website redesign with Next.js

Automating portfolio checks without hiding their limits

The portfolio uses several testing levels: unit tests under jsdom, component tests in a Playwright browser, visual regression tests, and end-to-end journeys. GitHub Actions runs checks so a change does not depend solely on my local environment. Resend, reCAPTCHA, and Google Tag Manager secrets remain provided through environment variables. External dependencies are simulated in some tests, a limitation I document instead of confusing a green suite with complete deployment validation.

Result — More than 170 tests now protect the main behaviors and content relationships. This automation speeds up change while keeping the real checks required at external-service boundaries explicitly identified.

Building a professional portfolio

The case studies that put this skill to the test

The evidence items describe specific episodes. This synthesis places them back in the complete case studies: context, my contribution, and outcome show what this skill made possible, while keeping the appropriate level of caution for each result.

Enterprise ERP migration from Odoo 16 to Odoo 19

Context
In summer 2025, 1UP Distribution's Odoo 16 ERP, used by 20 internal users, needed to move beyond its support period with 16 custom modules and third-party extensions.
My contribution
I independently handled preparation, the three successive migrations, testing, production release, and post-cutover fixes.
Established outcome
The ERP and required modules were migrated to Odoo 19 while preserving data, useful business functions, and the intended service continuity.

Business module development for an ERP

Context
At 1UP Distribution, accounting, sales, sales administration, and logistics needs exceeded Odoo's no-code customization capabilities.
My contribution
I independently designed 16 Odoo modules, from requirements analysis through development, testing, deployment, and user support.
Established outcome
The modules automate business tasks, structure shared data, and make functions such as reminders, documents, and B2B synchronization manageable within the ERP.

Corporate website redesign with Next.js

Context
1UP Distribution's showcase website needed to move away from the Odoo builder to present the company more effectively to professional clients across screen sizes.
My contribution
I audited the existing site, formalized the requirements, analyzed the Figma mockups, then built the responsive integration and front-end architecture with Next.js.
Established outcome
The redesign replaces constrained blocks with a continuous responsive interface, reusable components, and interactions that remain accessible without blocking information.

Building a professional portfolio

Context
This portfolio was rebuilt to meet the training assessment rubric while giving recruiters a clear view of the journey and achievements.
My contribution
I handle its architecture, development, design, writing, testing, deployment, and maintenance, with human review of assisted content.
Established outcome
The site connects experience, skills, achievements, and evidence in a bilingual application with a technical blog, consent management, and assessment-oriented navigation.

Self-assessment

Proficiency level

I still rate myself as a beginner, albeit one who has already prepared deployments and a critical migration on managed platforms. I can use pipelines, logs, backups, and environment variables. I still lack experience building and operating the infrastructure itself, especially networking, distributed observability, and infrastructure as code.

Importance in my profile

This skill matters because I often own the complete chain through production. It directly conditions the reliability of my Odoo, backend, and frontend skills: a good fix loses value if it cannot be deployed, monitored, or restored cleanly.

Hindsight and advice

My advice is to prepare rollback before production, verify backups through consistency rather than mere presence, and treat logs as product data. Managed platforms reduce operational work, but they do not remove responsibility for secrets, tests, or understanding what they automate.

Growth

Medium-term goal

Reach a solid intermediate level by being able to describe and automate a simple infrastructure, establish usable observability, and lead a deployment with tested restoration beyond a single managed platform.

Current or upcoming training

I continue studying Docker, minimal images, SBOMs, CI/CD pipelines, and monitoring. My future self-hosted Business Intelligence tool should provide a setting for practicing containers, persistence, backups, metrics, and regular service operation.