Skip to content

nelsonalejandro/portafolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Portafolio de Nelson Ramos

¡Bienvenido a mi portafolio personal! Soy Nelson Ramos, un desarrollador full-stack con más de 5 años de experiencia en el diseño, desarrollo e implementación de servicios RESTful y aplicaciones web escalables.

🚀 Tecnologías y Habilidades

Lenguajes y Frameworks

  • JavaScript/TypeScript: NestJS, Express, Angular, Vue 3
  • Java: Spring Boot, Spring Batch
  • Python: Desarrollo de módulos en Odoo
  • SQL: PostgreSQL, MySQL, Microsoft SQL Server

Herramientas y Tecnologías

  • DevOps: Git, GitHub, GitLab CI/CD, Jenkins, Docker
  • Bases de Datos: MongoDB, PostgreSQL, MySQL
  • Metodologías: Scrum, SOLID, POO, Patrones de Diseño
  • Herramientas: Postman, DBeaver, VS Code, IntelliJ

Especialidades

  • Integración de pasarelas de pago (RedPay)
  • SSO con Keycloak
  • Desarrollo de módulos personalizados en Odoo
  • APIs REST escalables
  • Automatización con Puppeteer

📋 Proyectos Destacados

🔄 Integración RedPay

Sistema de integración de pasarela de pagos para fintech, con middleware de ecosistema.

🤖 Suite Odoo IA

Módulos personalizados para servicios farmacéuticos con integración de IA.

🔐 SSO Keycloak

Implementación de Single Sign-On para múltiples servicios internos.

🎓 Educación

  • Ingeniero en Informática - I.P Santo Tomas (2012-2015)
  • Técnico en Plataformas Informáticas - I.P Santo Tomas (2009-2013)
  • Técnico en Telecomunicaciones - Liceo Juan Piamarta (2007-2009)

💼 Experiencia Laboral

Desarrollador Full-Stack - Junngla SPA (2023-Actualidad)

  • Desarrollo de APIs REST con NestJS
  • Creación de componentes en Vue 3 con Vuetify
  • Integración de pagos y SSO

System Engineer - Indra (2022-2022)

  • Desarrollo de APIs con Spring Boot
  • Procesamiento de datos con Spring Batch
  • Interfaces frontend con Angular

Desarrollador de Software - Bolsa de Santiago (2019-2019)

  • Automatización con Puppeteer y AngularJS

Desarrollador de Software - Fusiona (2019-2020)

  • APIs con Hapi y migración a Angular 9
  • Arquitectura de bases de datos en MongoDB

🌍 Filosofía de Trabajo

Trabajo bajo una filosofía que me permite entregar proyectos sólidos, eficientes y con un toque único: Trabajo Remoto y Vibe Coding.

Trabajo Remoto

No importa dónde estés, puedo desarrollar, optimizar y entregar soluciones sin límites geográficos. Esto me da la flexibilidad de trabajar de forma estratégica, manteniendo un flujo constante y una comunicación ágil.

Vibe Coding

Para mí, programar es más que escribir líneas de código: es un ambiente, una energía. Mi kit incluye Cursor para acelerar el desarrollo con IA, VS Code y suite de Jetbrains para personalizar cada proyecto, y una buena taza de café con música lo-fi.

Mi Promesa

Cada proyecto lo trato como si fuera propio: cuidando los detalles, optimizando recursos y asegurando que el resultado no solo cumpla, sino que impresione.

📞 Contacto

🛠️ Instalación y Configuración Local

Prerrequisitos

  • Node.js (versión 16 o superior)
  • npm o yarn

Instalación

  1. Clona el repositorio:

    git clone https://github.com/nelsonalejandro/portafolio.git
    cd portafolio
  2. Instala las dependencias:

    npm install
  3. Inicia el servidor de desarrollo:

    npm run dev
  4. Abre tu navegador en http://localhost:5173

Construcción para Producción

npm run build

Los archivos de producción estarán en la carpeta dist.

Características

  • Responsive: Diseño adaptativo para móviles y desktop
  • Tema Oscuro/Claro: Alternancia entre modos
  • Internacionalización: Soporte para español e inglés
  • Animaciones: Transiciones suaves con Framer Motion
  • Impresión Optimizada: Estilos especiales para impresión en PDF
  • AI Chat Assistant: Asistente virtual "El Socio" con reconocimiento de voz y síntesis de voz
    • Integración con ApiFreeLLM (modelo Llama 3)
    • Reconocimiento de voz en español
    • Síntesis de voz con voz masculina (Jorge)
    • Contexto de conversación persistente
    • Proxy PHP para producción (cPanel/shared hosting) que evita CORS
  • Google Tag Manager: Análisis de tráfico y comportamiento de usuarios

Variables de Entorno

Crea un archivo .env en la raíz del proyecto con las siguientes variables:

VITE_APIFREELLM_API_KEY=tu_api_key_de_apifreellm

Importante: VITE_APIFREELLM_API_KEY solo se usa en desarrollo. En producción, la API key debe configurarse en el servidor (ver sección Deploy en Producción).

Deploy en Producción (cPanel/Shared Hosting)

1) Build

npm run build

2) Subir archivos

Sube todo el contenido de dist/ a la carpeta raíz de tu dominio (ej. public_html/).

3) Configurar API key en el servidor

El proxy PHP (api/freellm/chat.php) busca la API key en este orden:

  • Opción A (recomendada): archivo en el Home Directory (fuera del webroot)
    • Crea ~/.apifreellm_api_key con solo la key como contenido.
  • Opción B (fallback): archivo local protegido
    • El build ya incluye api/freellm/.apifreellm_api_key (protegido por .htaccess).
    • Si usas esta opción, asegúrate de que el archivo exista en el servidor tras subir dist/.

4) Verificar

  • El chat debe llamar a /api/freellm/chat.php (mismo origen, sin CORS).
  • Si falla, abre https://tudominio.cl/api/freellm/debug.php para diagnosticar rutas y permisos.

Notas de seguridad

  • No exponer VITE_APIFREELLM_API_KEY en producción: las variables VITE_* quedan públicas en el bundle.
  • Rotar la key si estuvo expuesta: revoca la key anterior y genera una nueva en ApiFreeLLM.
  • El proxy PHP oculta la key del cliente y evita CORS al reenviar la request server-side.

📄 Licencia

Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para más detalles.


© Copyleft Nelson Ramos - Talca, VII Región del Maule, Chile

About

portafolio nelsonramos.cl

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors