adriantomgar@gmail.com +48 571 517 065 LinkedIn GitHub Cracovia, PL
Adrián Tomás García

Cracovia, Polonia · abierto a puestos de backend

Adrián Tomás García

Ingeniero Mecánico Desarrollador Backend

Ingeniero mecánico reconvertido a desarrollador backend. Escribo el software que los ingenieros mecánicos necesitan.

Construyo sistemas en Python que resuelven problemas de ingeniería reales: pipelines de reparación de malla para geometría 3D generada por IA, solvers FEM propios y modelos de ML que detectan anomalías en datos de reducción de presión de gas antes de que se conviertan en fallos.

Esa base construida desde cero, antes de apoyarme en ninguna asistencia de IA, es lo que aporto ahora al desarrollo rápido asistido por IA. No cambio precisión por velocidad, y no publico código que no necesita existir.

EXPERIENCIA PROFESIONAL

Donde el código se encontró con la máquina

Cada animación representa el tipo de trabajo que implicaba el puesto. Es una puerta de entrada visual, no una simulación numéricamente exacta — el repositorio enlazado es la prueba técnica.

Ingeniero de I+D y Operaciones de LaboratorioFicta3D P.S.A Cracovia, Polonia Jul 2026 — Actualidad ENGLISH
  • Dirijo el diseño fluidodinámico de una nueva impresora 3D de resina (FICTA O), cubriendo todo el ciclo de vida del producto: desde el modelado CAD en Inventor hasta la validación del prototipo y la documentación técnica.
  • Desarrollo el backend de un pipeline automatizado de procesado de malla 3D (Python, trimesh, NumPy): validación de geometría, reparación de non-manifold y autointersecciones, y conversión de modelos generados por IA y aportados por cliente.
  • Implemento sobre él un algoritmo de shrinking-ball directamente sobre arrays de vértices y caras en NumPy, junto a consultas de vecino más cercano (SciPy), aplicando álgebra lineal y estructuras de datos de malla de bajo nivel para detectar paredes finas antes de imprimir y convertirlas en geometría imprimible.
Reparación de mallas

FIG. 01 Diagnóstico de topología, reparación e impresión en resina de una malla generada por IA.

Ingeniero Mecánico JuniorENAGÁS S.A. Zamora, España Nov 2025 — May 2026 SPANISH · ENGLISH
  • Desarrollé servicios en Python para mantenimiento predictivo y detección de anomalías sobre series temporales de SCADA, monitorizando más de 1.000 trenes de reducción de presión de gas bajo múltiples regímenes operativos.
  • Construí todo el camino del dato en casa: ingesta y limpieza de flujos de sensor con ruido (pandas, NumPy), ingeniería de características, y entrenamiento y evaluación de modelos (scikit-learn, TensorFlow).
  • Revisé P&ID e infraestructura de transporte de fluidos a alta presión para gasoductos de hidrógeno, adquiriendo experiencia en el diseño y la verificación de componentes mecánicos sometidos a presión.
  • Validé sensores industriales de alta precisión mediante ensayos controlados en laboratorio, incluyendo benchmarking de rendimiento y elaboración de recomendaciones técnicas.
Detección de anomalías

FIG. 02 Cinco sensores en una línea de 72 → 16 bar alimentando un modelo multivariante de anomalías.

Ingeniero Junior · Responsable del Dpto. IndustrialMkZ Soluciones de Ingeniería S.L. Zamora, España Feb 2025 — Ene 2026 SPANISH
  • Desarrollé scripts de automatización en Python dentro de FreeCAD para generar componentes repetitivos y geometría dirigida por macros, reduciendo el tiempo de modelado en torno a un 30 % en conjuntos mecánicos grandes.
  • Realicé análisis de fatiga y tensiones por FEM de ejes portaherramientas de fresadora en ABAQUS, apoyando la verificación del diseño, su optimización y la extensión de la vida útil del componente mediante simulación.
  • Construí modelos y conjuntos 3D paramétricos en Autodesk Inventor, trabajando a partir de documentación técnica en inglés, y validé los resultados numéricos contra cálculos analíticos a mano.
  • Diseñé estrategias de CAM de 5 ejes y soluciones de fabricación aditiva (metal y polímero) siguiendo principios de DfM para prototipado rápido e iteración de diseño.
  • Gestioné el departamento industrial: definición de alcance, requisitos de cliente y entrega.
Automatización CAD

FIG. 03 Costilla de ala paramétrica: parámetros, generación de trayectorias y mecanizado en 3 ejes.

Prácticas de ingenieríaTalleres Óñiga — Mecanizados de precisión Salamanca, España Jun — Ago 2024 SPANISH
  • Experiencia directa con mecanizado convencional y CNC, definiendo operaciones de fabricación y contribuyendo al codiseño con enfoque de fabricabilidad.
  • Ejecuté verificación y optimización de tolerancias de alta precisión bajo requisitos estrictos de cliente para la industria nuclear (ENUSA).
05 — PROYECTOS DESTACADOS

Hecho desde cero, validado a mano

Programa de cálculo de estructuras metálicas con implementación de IATrabajo de Fin de Grado · Universidad de Salamanca Escuela de Ingeniería, Zamora Presentado en septiembre de 2025 Tutor: Manuel Domínguez Lorenzo
  • Construí desde cero un solver FEM propio en Python/NumPy para pórticos metálicos 3D, implementando el método directo de rigidez — el mismo que subyace a SAP2000, ABAQUS y ANSYS — incluyendo una tubería de rotación por Gram-Schmidt derivada por mí para la transformación a ejes globales y un módulo de comprobación de resistencia de sección según Eurocódigo 3.
  • Formulación completa de elemento viga 3D: matrices de rigidez elementales de 12×12 que cubren los grados de libertad axial, de flexión (en ambos ejes locales), cortante y torsional por nudo (6 gdl × 2 nudos por elemento). El procedimiento de Gram-Schmidt incluye un caso especial para elementos puramente verticales, donde el método general de ortonormalización degenera.
  • Admite cargas puntuales, cargas uniformemente distribuidas y peso propio; calcula diagramas de esfuerzo axil, cortante y flector a lo largo de cada barra con la resolución que elija el usuario.
  • Validado contra casos de libro calculados a mano en múltiples orientaciones de carga, documentando y localizando la causa raíz de la única discrepancia encontrada (mapeo de ejes en el tratamiento de datos intermedios), en lugar de pasarla por alto.
  • Exploré la generación de diseño estructural asistida por LLM (prompting con JSON propio) como capa de prototipado rápido sobre el solver. Stack: Python · NumPy · SciPy · PyVista · PyQt6 · API de OpenAI.
Análisis FEM

FIG. 04 Nave de 24 × 24 m, 5 pórticos a 6 m · pilares HEB 240 · dinteles IPE 400 · q = 1,0 kN/m².

Fresadora CNC de 3 ejesProyecto personal / académico
  • Diseño integral de una fresadora CNC portátil con LinuxCNC — abarcando diseño mecánico, electrónica e integración del sistema de control. Incluyó soluciones de reducción de ruido para su uso en exposiciones de minerales. Prototipo pendiente por presupuesto.
07 — HABILIDADES TÉCNICAS

Por nivel de dominio, no por porcentaje

Agrupadas según cuánto las uso de verdad. Sin números inventados: si una herramienta está en el nivel intermedio, es porque hay un proyecto en esta página que lo demuestra.

Con lo que trabajo a diario

Python Git Inventor FreeCAD

Con experiencia sólida y proyectos reales

cada una enlazada al trabajo que la respalda

Familiarizado / en aprendizaje activo

SciPy Ubuntu Server ABAQUS ANSYS CAM de 5 ejes SolidWorks Catia V5
08 — ¿QUÉ PUEDO HACER POR VOSOTROS?

Tres patrones, cada uno visible en dos sitios

01

Aprendo lo que el trabajo necesita antes de que nadie me lo pida.

A MkZ no me contrataron para escribir Python: aprendí solo a programar FreeCAD y recorté cerca de un 30 % el tiempo de modelado en conjuntos grandes. En ENAGÁS eso se convirtió en construir un camino del dato completo en casa, desde la ingesta de sensores con ruido hasta el modelo entrenado, para más de 1.000 trenes de reducción de presión.

MkZ → ENAGÁS

02

Puedo llevar un problema físico hasta dentro de un pipeline de software.

Para el TFG derivé e implementé el método directo de rigidez desde cero, en NumPy, y lo validé contra cálculos a mano. En Ficta3D el mismo instinto va a la geometría de malla: shrinking-ball y consultas de vecino más cercano sobre arrays de vértices y caras en crudo para encontrar paredes finas antes de que una impresión falle.

TFG → Ficta3D

03

Dejo las cosas escritas para que la siguiente persona pueda usarlas.

He coescrito dos libros técnicos: uno sobre IA y ML aplicados a la empresa y otro sobre impresión 3D y validación de diseño por FEM. La misma costumbre aparece en el trabajo: la impresora FICTA O salió con su documentación técnica, y el TFG documentó la única discrepancia de validación que encontró en lugar de esconderla.

Publicaciones → documentación de ingeniería

10 — EDUCACIÓN

Formación reglada, académica y musical

Grado en Ingeniería Mecánica — Universidad de Salamanca

Salamanca, España · Sep 2020 — Oct 2025

Programa de Especialización en Mecánica de Piano — Universidad Europea Miguel de Cervantes

Valladolid, España · Sep 2018 — Ene 2020

Grado Profesional de Guitarra Clásica — Conservatorio Profesional de Música de Salamanca

Salamanca, España · Sep 2011 — Jun 2018

El instinto de precisión se me formó regulando mecánicas de piano: una tecla que recorre una décima de milímetro de más es una tecla que se siente mal, y no hay explicación que lo arregle. Ese es el mismo estándar que aplico a una tolerancia, a una matriz de rigidez o a una malla que tiene que quedar estanca.

11 — IDIOMAS

Idiomas

Español

Nativo

Inglés

C1

Competencia profesional de trabajo.

Polaco

A0 — en aprendizaje activo

Ya viviendo en Cracovia.

12 — CONTACTO

Hablemos de vuestro backend.

Si buscáis a alguien para Python o backend y queréis ver cómo pienso un problema antes de la entrevista, todo lo de arriba ya es la respuesta. Escribidme y contesto.

adriantomgar@gmail.com