Add main.typ
This commit is contained in:
314
main.typ
Normal file
314
main.typ
Normal 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.
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user