Add main.typ

This commit is contained in:
PedroEdiaz
2026-01-16 04:13:26 -06:00
commit 7f45ca9a89

314
main.typ Normal file
View File

@@ -0,0 +1,314 @@
#set par(justify: false)
#set text(hyphenate: false)
#let inline-list(list) = {
for i in list{
if (i == list.first()) {
text[#i]
} else {
text[ #i]
}
}
linebreak()
}
#let full = false
#let data_analyst = full or true
#let low_level = full or false
#let scientific = full or false
#let backend = full or false
#let systems = full or false
#let didactics = full or true
#let graphic = full or false
#let roles = ( "Undergraduate in Physics and Mathematics",)
#if (low_level) { roles.push("Low Level Developer") }
#if (scientific) { roles.push("Scientific Developer") }
#if (systems) { roles.push("System Developer") }
#if (backend) { roles.push("Backend Developer") }
#if (data_analyst) { roles.push("Data Analyst") }
#if (graphic) { roles.push("Graphic Developer")}
#if (didactics) { roles.push("Vocational Educator")}
#let roles = roles.slice(0,2)
#let esfm_courses = (strong("Relevant coursework:"),)
#if (data_analyst) {
esfm_courses.push("Probability I")
esfm_courses.push("Linear Programming")
}
#if (didactics) {esfm_courses.push("Learning Evaluation")}
#set text(10pt)
= #text(24pt)[Pedro Emilio Díaz Camacho]
#inline-list( roles )
#inline-list((
"Mexico, Mexico City", "+(52)551-599-6573", link("mailto:ppedroediaz@gmail.com")
))
#let description = false
#if (not description and (full)) {description = true; [
Physics & Mathematics undergraduate with a multidisciplinary background
in Data Analysis, Systems Programming, and Technical Education.
Proven track record of leading teams in high-dimensional data
visualization and developing custom low-level software tools. Focused
on building high-performance, data-driven systems.
]; linebreak() }
#if (not description and (data_analyst or scientific)) {description = true; [
Physics and Mathematics undergraduate specializing in turning complex
datasets into actionable insights. Proficient in Python, R, and SQL,
with a deep understanding of probability and linear programming.
Experienced in building multi-dimensional visualization systems and
automated financial trackers.
]; linebreak() }
#if (not description and (low_level or systems)) {description = true; [
Systems Programmer with a focus on C (C89/C99) and low-level hardware
interaction via syscalls and ioctl. Experienced in building custom
regular expression engines and managing self-hosted Linux
infrastructure with SSH hardening. Strong foundation in finite automata
and cross-platform binary deployment.
]; linebreak() }
#if (not description and (backend)) {description = true; [
Backend Developer experienced in Go and REST API design with OAuth 2.0
and OpenID Connect integration. Skilled in relational database
normalization (SQL) and infrastructure management using Caddy and
Gitea. Proven ability to lead small teams in delivering stateless,
concurrent system architectures.
]; linebreak() }
#if (not description and (graphics)) {description = true; [
Graphics Programmer with expertise in real-time rendering and OpenGL
3.0. Lead developer for interactive visualization systems capable of
rendering geometric data in up to 100 dimensions. Proficient in
WebAssembly for high-performance web-based visualization and geometric
data analysis.
]; linebreak() }
#if (not description and (didactics)) {description = true; [
Vocational Educator and Math specialist with experience in workshop
coordination and science divulgation. Expert in Learning Management
Systems (Moodle, Canvas) and the application of science didactics to
technical training. Committed to making complex technical concepts
navigable and useful for diverse learners.
]; linebreak() }
#inline-list(( strong("Portfolio"), link("https://git.nviam.dev/pedroediaz") ))
#inline-list(( strong("Linkedin"), link("https://www.linkedin.com/in/ppedroediaz") ))
#inline-list(( strong("Webpage"), link("https://pedroediaz.nviam.dev") ))
== Volunteer
#line(length:100%)
#inline-list((
strong("ESFM Programing Club"),
"Mexico, Mexico City",
"Workshop Coordinator"
))
#inline-list(("January 2025", "Present" ))
#inline-list((
strong(link("https://drive.google.com/file/d/13EZ1NVvksw0bsEGPSl0A0nhqmYdD_IAP/view")[IEEE Seccion Mexico]),
"Mexico, Mexico City",
"Guest Speaker on Math Divulgation"
))
May 2021
#inline-list((
strong("Inchgart Community Center"),
"Scotland, Aberdeen",
"Barista & Cashier"
))
== Education
#line(length:100%)
#inline-list((
strong("Instituto Politécnico Nacional"),
"Mexico, Mexico City",
"Licenciatura en Fisica y Matematicas"
))
#inline-list(esfm_courses)
#inline-list(("February 2020", strong("Expected: 2026")))
#inline-list((
strong("International House Aberdeen"),
"Scotland, Aberdeen",
"English Language Immersion & B2 Certification"
))
#inline-list(("September 2019", "December 2019"))
#inline-list((
strong("Colegio del Tepeyac"),
"Mexico, Mexico City",
"High School"
))
#inline-list(("2016","2019"))
== Skills
#line(length:100%)
#inline-list((
strong("Languages"),
"Spanish (Native)",
"English (C1, B2 Certified)",
"Italian (Beginner)",
))
#if (not full) {
if (data_analyst) {
inline-list((
strong("Data Engineering & Analysis"),
"Python",
"R",
"Relational database design (SQL, SQLite)",
"Excel (Charts, Google Sheets)",
"VBA"
))
}
if (data_analyst or backend or systems ) {
inline-list((
strong("DevOps & Collaboration"),
"Git",
"OpenAPI",
"Unit Testing"
))
}
if (systems or backend ) {
inline-list((
strong("Backend Development"),
"Go", "REST APIs", "OAuth 2.0 / OpenID Connect",
"middleware pipelines", "Single-binary deployment"
))
}
if (systems ) {
inline-list((
strong("Systems & Infrastructure"),
"Self-hosted Linux",
"Server management",
"Caddy (TLS automation, reverse proxy)",
"SSH hardening",
"Gitea (private Git hosting)"
))
}
if (scientific) {
inline-list((
strong("Scientific Computing & Visualization"),
"Real-time Rendering",
"Geometric Data Analysis",
"OpenGL 3.0",
"WebAssembly",
"HTML5",
))
}
if (low_level) {
inline-list((
strong("Low-Level & Systems Programming"),
"C (C89/C99)",
"GDB",
"Valgrind",
"Direct hardware interaction via syscalls and ioctl",
"Finite automata implementation (Thompson NFA)",
"Cross-platform binary deployment (Windows/Linux/MacOS/Web)"
))
}
if (didactics) {
inline-list((
strong("Learning Systems & Didactics"),
"Science Didactics",
"Moodle",
"Canvas"
))
}
} else {
inline-list((
strong("Technical Skills"),
"Data Analyst",
"Low Level Developer",
"Scientific Developer",
"Backend Developer",
"Systems Developer",
"Science Didactics",
"Graphic Developer",
))
}
#inline-list((
strong("Soft Skills"),
"Analytical Thinking",
"Precision & Attention to Detail",
"Systems Thinking",
"Pragmatism",
"Self-Directed Learning",
"Teamwork",
))
#inline-list((
strong("Hobbies"),
"Poetry",
"Gardening",
"Travelling",
"Sightseeing",
"Museums & Cultural History",
"Running"
))
== Projects
#line(length:100%)
#if (scientific or graphic) {
inline-list((link("https://git.nviam.dev/ax/manigraph")[*manigraph*], "High Dimensional Renderer", "Lead developer"))
[
- Led a team of four to build a real-time renderer of high-dimensional geometric data (up to 100 dimensions).
- Utilized OpenGL 3.0 and WebAssembly to achieve high-performance rendering in web environments.
- Applied geometric data analysis to transform abstract mathematical relationships into navigable 3D/web-based visual context.
- Engineered the system from the ground up for cross-platform compatibility.
]
}
#if (low_level) {
inline-list(( link("https://git.nviam.dev/pedroediaz/lx")[*lx*], "Custom Regex Engine"))
[
- Implemented a lightweight Thompson NFA Regex Engine.
- Developed in C focused on memory efficiency and speed.
- Introduced a custom oracle based operator `'` for single-character negative matching.
- Used GDB/Valgrind for memory leak detection and debugging.
]
inline-list((link("https://git.nviam.dev/pedroediaz/cdplayer")[*cdplayer*], "CD Player"))
[
- Developed a low-level audio player in C that interfaces directly with the Linux kernel via syscalls and ioctl.
- Integrated tinyalsa for direct hardware audio playback, successfully bypassing standard high-level multimedia frameworks.
- Applied finite automata principles to manage player states (Play, Pause, Seek) with high precision and zero overhead.
- Focused on a dependency-free architecture to maximize system performance and minimize binary size.
]
}
#if (backend) {
inline-list((link("https://git.nviam.dev/pedroediaz/nwiki-doc")[*nwiki*], "Wiki Backend"))
[
- Designed and implemented a normalized, relational SQL database to power a stateless wiki backend.
- Optimized complex queries for tag-based filtering, ensuring high performance during data retrieval.
- Engineered the system for atomic updates and concurrent access to maintain data integrity.
- Implemented secure user authentication and permissions using OAuth-controlled protocols.
]
}
#if (systems) {
inline-list((strong("nviam"), "Personal Server"))
[
- Deployed and currently maintain a self-hosted Linux server environment running SSH, Gitea, and Caddy.
- Configured Caddy for automated TLS certificate management and reverse proxying to secure web traffic.
- Implemented SSH hardening and robust system configurations to ensure infrastructure security.
- Managed private Git hosting via Gitea, showcasing practical experience in infrastructure reliability and service deployment.
]
}
#if (data_analyst) {
inline-list(( strong("Personal Finance Analytics System"), ))
[
- Engineered a multi-currency tracking system using Google Sheets to automate daily income/expense.
- Designed dynamic dashboards to visualize cash flow across multiple credit cards and custom categories.
- Implemented data normalization techniques to ensure consistency across different currency formats and transaction types.
]
}