Initial CV in Typst with Nix flake

This commit is contained in:
William 2026-05-23 20:41:47 -03:00
commit 5305224b2b
4 changed files with 292 additions and 0 deletions

10
.gitignore vendored Normal file
View file

@ -0,0 +1,10 @@
# Build artifacts
*.pdf
# Nix
result
result-*
# Editor
.vscode/
.idea/

180
cv.typ Normal file
View file

@ -0,0 +1,180 @@
#set page(
margin: (top: 1.8cm, bottom: 1.5cm, left: 1.85cm, right: 1.85cm),
paper: "a4",
)
#set text(
font: ("Libertinus Serif", "DejaVu Serif"),
size: 10.5pt,
hyphenate: false,
lang: "en",
)
#set par(
justify: true,
leading: 0.48em,
)
#set list(
tight: true,
indent: 0.8em,
body-indent: 0.25em,
marker: [\u{2022}],
)
#set heading(numbering: none)
#show heading: it => {}
#let accent = rgb("#1f4e79")
#show strong: set text(fill: accent)
#let section(title) = {
v(0.65em)
text(size: 11pt, weight: "bold", fill: accent)[#upper(title)]
v(-0.12em)
line(length: 100%, stroke: 0.4pt + accent)
v(0.2em)
}
#let job(title, details) = {
grid(
columns: (1fr, auto),
column-gutter: 0.6em,
stroke: none,
title,
align(right, details),
)
}
// ===== HEADER =====
#align(center)[
#text(size: 17pt, weight: "bold", fill: accent)[WILLIAM FRANCO ABDUL HAI]
#v(0.15em)
#text(size: 9.5pt)[
baduhai\@proton.me | +55 75 99254-7374 | github.com/baduhai
]
]
#v(0.5em)
#text(size: 10pt, style: "italic")[
DevOps Engineer and Linux Systems Administrator with 5+ years of
experience managing multi-cloud infrastructures across AWS, Azure, and
on-premise environments. Expertise in containerisation, infrastructure
as code, and automation, with a proven track record of optimising
deployments, reducing costs, and implementing reliable CI/CD pipelines.
Skilled at managing distributed systems and delivering scalable
solutions for diverse client needs.
]
// ===== EDUCATION =====
#section[Education]
*Universidade SENAI CIMATEC*
#job[#text(size: 9.5pt)[Bachelor of Engineering in Computer Engineering]][#text(size: 9.5pt)[Salvador, Brazil | Ongoing -- Dec 2026]]
// ===== PROFESSIONAL EXPERIENCE =====
#section[Professional Experience]
#job[*DevOps Engineer → Operations Team Lead*][T-Systems | Remote | Mar 2025 -- Present]
- Maintain 15+ production and development environments across Open Telekom Cloud and Microsoft Azure, ensuring high availability and performance.
- Manage 45+ Rocky Linux virtual machines, implementing security patches, updates, and configuration management.
- Orchestrated migration from Ansible-based deployment playbooks to Terraform-based infrastructure as code, achieving significantly more reliable and repeatable deployments.
- Implement comprehensive monitoring and automation solutions across all environments, reducing manual intervention and improving incident response times.
- Promoted to Operations Team Lead in February 2026 while retaining previous operational responsibilities.
- Serve as the primary technical liaison between development teams based in Germany and India and the Brazil-based operations team.
- Coordinate and delegate operational tasks across a 4-person team, supporting infrastructure delivery, incident response, and deployment operations.
#v(0.3em)
#job[*System Administrator & DevOps Engineer*][Freelance | Remote | Oct 2022 -- Feb 2025]
- Managed up to 3 concurrent clients across various time zones, delivering reliable infrastructure and DevOps solutions.
- Streamlined operations through automation and CI/CD pipeline configuration, reducing deployment times and improving reliability.
- Created and maintained reproducible, containerised, and distributed systems using Docker, Kubernetes, and NixOS.
- Executed complete infrastructure migrations across AWS, Huawei Cloud, and on-premise environments.
#v(0.2em)
_Key Client Projects:_
#v(0.05em)
#text(size: 10pt)[*Genetic Intelligence (Medical Machine Learning Project)*]
- Packaged multiple Python CUDA packages in Nix for machine learning applications, enabling reproducible GPU-accelerated computing.
- Developed a continuous delivery pipeline to build and deploy NixOS virtual machine images on GCP Compute Engine, saving 2+ hours of manual configuration weekly.
#v(0.05em)
#text(size: 10pt)[*Global Ethics Solutions (Online Courses Platform)*]
- Planned and executed an upgrade from CentOS 7 to AlmaLinux 8, ensuring zero downtime during migration.
- Maintained server security and performed regular updates, ensuring compliance and system stability.
#v(0.05em)
#text(size: 10pt)[*VoxLink (IP Phone Provider)*]
- Facilitated phasing out of AWS in hybrid cloud infrastructure, saving client over \$1,000 monthly in AWS fees.
- Migrated specific services to Huawei Cloud and upgraded servers from outdated Debian versions to supported releases.
- Planned migration from manually configured container environments to Kubernetes cluster managed with Terraform across multiple regions.
#pagebreak()
#job[*Help Desk Analyst*][Tech Mahindra | Remote | Nov 2023 -- Mar 2024]
- Processed 15+ support tickets daily, closing an average of 10 tickets per day with high customer satisfaction.
- Provided technical support for software applications, including installation, configuration, and troubleshooting on end-user systems.
- Resolved client software issues through systematic troubleshooting of application installations, browser configurations, and data migrations.
#v(0.3em)
#job[*Open Source Software Analyst*][credativ GmbH | Mönchengladbach, Germany | Dec 2020 -- Oct 2022]
- Provided Level 3 support for client companies across various server applications and Linux environments.
- Managed traditional Linux distributions and authored automation scripts for infrastructure maintenance.
- Set up containerised and virtualised environments using Docker, Kubernetes, and KVM.
#v(0.3em)
#job[*English Instructor*][Berlitz | Remote | May 2023 -- Aug 2023]
- Instructed adult learners of diverse levels in English as an Additional Language.
- Cultivated a dynamic and engaging learning environment for international professionals.
// ===== PROJECTS & OPEN SOURCE =====
#section[Projects & Open Source]
#job[*NixOS Package Maintainer*][NixOS | 2022 -- Present]
- Active contributor to nixpkgs repository and maintainer of multiple packages in the NixOS ecosystem.
#v(0.25em)
#job[*Koi -- Linux Desktop Theme Manager*][Personal Project | 2020 -- Present]
- Developed Koi, a Linux desktop utility written in C++ and Qt for theme management, reaching 380+ GitHub stars.
- Attracted contributions from 19 independent developers and released under LGPL licence.
// ===== TECHNICAL SKILLS =====
#section[Technical Skills]
#text(size: 10pt)[
*Cloud Platforms:* AWS | Azure | OpenStack | Open Telekom Cloud | Huawei Cloud \
*Container & Orchestration:* Docker | Podman | Kubernetes \
*Infrastructure as Code:* Terraform | Ansible | Nix \
*Monitoring & Observability:* Grafana | Loki | Prometheus \
*Operating Systems:* Debian | Ubuntu | NixOS | CentOS \
*Programming Languages:* Python | C++ | Rust | Bash
]
// ===== LANGUAGES =====
#section[Languages]
*English:* Native | *Portuguese:* Native | *German:* C1 | *French:* B1

61
flake.lock generated Normal file
View file

@ -0,0 +1,61 @@
{
"nodes": {
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1779508470,
"narHash": "sha256-Ap9KJX+5xHIn3bPIpfNgT6MEXdAECECwo4/rmlQD74M=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "29916453413845e54a65b8a1cf996842300cd299",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

41
flake.nix Normal file
View file

@ -0,0 +1,41 @@
{
description = "William Hai's CV in Typst";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
fonts = with pkgs; [ libertinus ];
fontconf = pkgs.makeFontsConf {
fontDirectories = fonts;
};
in
{
devShells.default = pkgs.mkShell {
packages = with pkgs; [ typst ] ++ fonts;
FONTCONFIG_FILE = fontconf;
};
packages.cv = pkgs.stdenvNoCC.mkDerivation {
name = "william-hai-cv";
src = ./.;
nativeBuildInputs = with pkgs; [ typst ] ++ fonts;
FONTCONFIG_FILE = fontconf;
buildPhase = ''
typst compile cv.typ cv.pdf
'';
installPhase = ''
mkdir -p $out
cp cv.pdf $out/
'';
};
packages.default = self.packages.${system}.cv;
}
);
}