%-------------------------
% Resume in Latex
% Author: Luis Soracá
% Based on: Jake Gutierrez / Jake Ryan template
% License : MIT
%------------------------
% Esta es la version GENERAL (CV por defecto): pensada para vacantes de
% Full Stack / Backend / Software Engineer. La IA aparece como una
% herramienta mas, no como el eje del perfil. Si necesitas una version
% orientada a roles de IA/LLM, pide una variante aparte a partir de esta.

% ---------- AJUSTE DE ESPACIO (si aún se pasa de una hoja) ----------
% 1) Cambia 11pt por 10pt en la línea de abajo: es el ajuste más efectivo (~10% menos alto).
% 2) Sube \addtolength{\textheight} de 1.0in a 1.15in (margen inferior más justo).
% 3) En \resumeItem, cambia \vspace{-2pt} por \vspace{-3pt}.
% -------------------------------------------------------------------
\documentclass[letterpaper,11pt]{article}

\usepackage{latexsym}
\usepackage[empty]{fullpage}
\usepackage{titlesec}
\usepackage{marvosym}
\usepackage[usenames,dvipsnames]{color}
\usepackage{verbatim}
\usepackage{enumitem}
\usepackage[hidelinks]{hyperref}
\usepackage{fancyhdr}
% es-noshorthands: evita que " < > ' se vuelvan caracteres activos
% es-nolists: conserva las viñetas del template en lugar de las de babel-spanish
\usepackage[spanish,es-noshorthands,es-nolists]{babel}
\usepackage{tabularx}
\usepackage[utf8]{inputenc}   % acentos: Soracá, Barranquilla
\usepackage[T1]{fontenc}
\input{glyphtounicode}


%----------FONT OPTIONS----------
% sans-serif
% \usepackage[sfdefault]{FiraSans}
% \usepackage[sfdefault]{roboto}
% \usepackage[sfdefault]{noto-sans}
% \usepackage[default]{sourcesanspro}

% serif
% \usepackage{CormorantGaramond}
% \usepackage{charter}


\pagestyle{fancy}
\fancyhf{} % clear all header and footer fields
\fancyfoot{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}

% Adjust margins
\addtolength{\oddsidemargin}{-0.5in}
\addtolength{\evensidemargin}{-0.5in}
\addtolength{\textwidth}{1in}
\addtolength{\topmargin}{-.5in}
\addtolength{\textheight}{1.0in}

\urlstyle{same}

\raggedbottom
\raggedright
\setlength{\tabcolsep}{0in}

% Sections formatting
\titleformat{\section}{
  \vspace{-4pt}\scshape\raggedright\large
}{}{0em}{}[\color{black}\titlerule \vspace{-5pt}]

% Ensure that generate pdf is machine readable/ATS parsable
\pdfgentounicode=1

%-------------------------
% Custom commands
\newcommand{\resumeItem}[1]{
  \item\small{
    {#1 \vspace{-2pt}}
  }
}

\newcommand{\resumeSubheading}[4]{
  \vspace{-2pt}\item
    \begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
      \textbf{#1} & #2 \\
      \textit{\small#3} & \textit{\small #4} \\
    \end{tabular*}\vspace{-7pt}
}

\newcommand{\resumeSubSubheading}[2]{
    \item
    \begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
      \textit{\small#1} & \textit{\small #2} \\
    \end{tabular*}\vspace{-7pt}
}

\newcommand{\resumeProjectHeading}[2]{
    \item
    \begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
      \small#1 & #2 \\
    \end{tabular*}\vspace{-7pt}
}

\newcommand{\resumeSubItem}[1]{\resumeItem{#1}\vspace{-4pt}}

\renewcommand\labelitemii{$\vcenter{\hbox{\tiny$\bullet$}}$}

\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=0.15in, label={}]}
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}}
\newcommand{\resumeItemListStart}{\begin{itemize}}
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}}

%-------------------------------------------
%%%%%%  RESUME STARTS HERE  %%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{document}

%----------ENCABEZADO----------
% TODO: agrega el Portafolio aquí cuando tengas el link definido (dejar como
% $|$ \href{URL}{\underline{PORTAFOLIO}} entre GitHub y el cierre del \end{center})
\begin{center}
    \textbf{\Huge \scshape Luis Soracá} \\ \vspace{2pt}
    \small Desarrollador Full Stack $|$ Barranquilla, Colombia $|$ +57 302 457 0425 \\ \vspace{2pt}
    \small \href{mailto:luisenriquesoraca27@gmail.com}{\underline{luisenriquesoraca27@gmail.com}} $|$
    \href{https://www.linkedin.com/in/luis-soraca/}{\underline{linkedin.com/in/luis-soraca}} $|$
    \href{https://github.com/LuisSoraca27}{\underline{github.com/LuisSoraca27}} $|$
    \href{https://github.com/LuisSoraca27}{\underline{Portafolio}}
\end{center}


%-----------PERFIL-----------
\section{Perfil Profesional}
\begin{itemize}[leftmargin=0.15in, label={}]
  \small{\item{
   Desarrollador Full Stack con experiencia diseñando y construyendo aplicaciones web y móviles, APIs REST y
   plataformas SaaS con TypeScript, Python, React, React Native y NestJS sobre PostgreSQL. He liderado productos
   completos de principio a fin, desde la arquitectura y el modelado de datos hasta el despliegue en producción,
   con foco en escalabilidad y buenas prácticas de ingeniería.
  }}
\end{itemize}


%-----------EXPERIENCIA-----------
\section{Experiencia Profesional}
  \resumeSubHeadingListStart

    \resumeSubheading
      {Desarrollador Full Stack}{Feb. 2025 -- Dic. 2025}
      {Kymbo Devs}{Remoto}
      \resumeItemListStart
       \resumeItem{Desarrollé APIs REST escalables con NestJS y FastAPI, diseñando y optimizando bases de datos PostgreSQL.}

\resumeItem{Desarrollé y mantuve módulos para Shopify utilizando Remix.}

\resumeItem{Diseñé e integré agentes de IA con LangChain, LangGraph y OpenAI para automatizar procesos.}

\resumeItem{Mejoré el rendimiento y la mantenibilidad del backend mediante arquitectura modular y trabajo en equipos Agile.}
      \resumeItemListEnd

    \resumeSubheading
      {Desarrollador Full Stack Freelance}{Ene. 2024 -- Dic. 2024}
      {Independiente}{Barranquilla, Colombia}
      \resumeItemListStart
      \resumeItem{Desarrollé soluciones web personalizadas para diferentes clientes, participando en todas las etapas del proyecto, desde el levantamiento de requerimientos hasta el despliegue.}

\resumeItem{Construí interfaces con React, desarrollé APIs REST e implementé mejoras de rendimiento, SEO e integración con servicios de terceros según las necesidades de cada cliente.}
      \resumeItemListEnd

    \resumeSubheading
      {Desarrollador Web}{Mar. 2023 -- Sep. 2023}
      {Edil Andina}{Barranquilla, Colombia}
      \resumeItemListStart
        \resumeItem{Mantuve sitios web corporativos e implementé nuevas funcionalidades solicitadas por stakeholders.}
        \resumeItem{Desarrollé sitios y e-commerce en WordPress, optimizando rendimiento y experiencia de usuario.}
      \resumeItemListEnd

  \resumeSubHeadingListEnd


%-----------PROYECTOS-----------
% TODO: las fechas "2025" de los proyectos son un placeholder: pon los rangos reales
\section{Proyectos Destacados}
    \resumeSubHeadingListStart

      % TODO: confirmar el stack real de Trayko
      \resumeProjectHeading
          {\textbf{Trayko} $|$ \emph{App carpooling} $|$ \small React Native, Expo, NestJS, PostgreSQL, Firebase, Docker}{2025}
          \resumeItemListStart
           \resumeItem{Desarrollé de extremo a extremo una plataforma de movilidad compartida, incluyendo aplicación móvil, backend y arquitectura de base de datos.}

\resumeItem{Construí funcionalidades clave como publicación y reserva de viajes, chat en tiempo real, geolocalización, seguimiento en vivo y notificaciones push.}

\resumeItem{Implementé autenticación segura con JWT, control de acceso por roles, integración de pagos y optimización de APIs para un despliegue escalable.}
          \resumeItemListEnd

      \resumeProjectHeading
          {\textbf{Streaming CRM} $|$ \emph{SaaS privado} $|$ \small React, ExpressJs, PostgreSQL}{2025}
          \resumeItemListStart
            \resumeItem{Diseñé y desarrollé un SaaS para revendedores de streaming, con módulos de inventario, clientes y suscripciones.}
            \resumeItem{Construí las APIs y el dashboard de analítica de ingresos y renovaciones consumido por el frontend en React.}
            \resumeItem{Implementé autenticación segura y optimicé las consultas a PostgreSQL para mantener los dashboards ágiles.}
          \resumeItemListEnd

    \resumeSubHeadingListEnd


%-----------HABILIDADES TÉCNICAS-----------
\section{Habilidades Técnicas}
 \begin{itemize}[leftmargin=0.15in, label={}]
    \small{\item{
     \textbf{Lenguajes}{: TypeScript, JavaScript, Python} \\
     \textbf{Frontend}{: React, React Native, Expo, Next.js, Remix, Tailwind CSS, HTML5, CSS3} \\
     \textbf{Backend y Datos}{: Node.js, NestJS, Express, FastAPI, PostgreSQL, Prisma ORM, Redis, Firebase, APIs REST, JWT} \\
     \textbf{Inteligencia Artificial}{: OpenAI API, LangChain, LangGraph} \\
     \textbf{Cloud \& DevOps}{: Docker, AWS, Railway, Vercel, Cloudflare} \\
     \textbf{Herramientas}{: Git, GitHub, Postman, Figma, Claude Code}
    }}
 \end{itemize}


%-----------EDUCACIÓN-----------
\section{Educación}
  \resumeSubHeadingListStart
    \resumeSubheading
      {Universidad de la Costa (CUC)}{Barranquilla, Colombia}
      {Técnico en Desarrollo de Software}{2025 -- Actualidad}
    \resumeSubheading
      {Academlo}{Remoto}
      {Programa Intensivo Full Stack Developer}{Jun. 2022 -- Dic. 2022}
  \resumeSubHeadingListEnd


%-------------------------------------------
\end{document}
