Habilidades Técnicas
Por César Ballardini
- Lectura en 7 minutos - 1380 palabrasCésar Ballardini — Habilidades Técnicas
Desarrollador de Software Senior · Arquitecto de Sistemas · Educador | Redes Eléctricas y Sistemas de Potencia | Vue.js · TypeScript · Python · GNU/Linux
A continuación se presenta una lista parcial de palabras clave. Cada una representa un componente, habilidad o actividad con la que trabajo o he trabajado. Para documentación, detalles o discusión sobre cualquier tema listado, contactarme.
Programación
Lenguajes de Programación
actuales: Python, TypeScript, JavaScript, SQL, Bash anteriores: C, Ruby, PHP, Smalltalk, Scheme, Prolog, Clipper
Paradigmas de Programación
temas: programación orientada a objetos, programación funcional, programación lógica, programación imperativa, programación dirigida por eventos lenguajes: Pharo Smalltalk (POO), Racket Scheme (funcional), SWI Prolog (lógica), Python (multi-paradigma), TypeScript (multi-paradigma) temas: paso de mensajes, clausuras, funciones de orden superior, unificación, backtracking, coincidencia de patrones, recursión, polimorfismo, encapsulamiento, herencia
Conceptos de Programación
temas: estructuras de datos, algoritmos, patrones de diseño, sistemas de tipos, tipado estático, tipado dinámico temas: concurrencia, programación asincrónica, promesas, async/await, programación reactiva temas: refactorización, revisión de código, programación en pares, desarrollo dirigido por pruebas, pruebas unitarias
Desarrollo Frontend
Ecosistema Vue.js
componentes: Vue 3, Composition API, <script setup>, Single File Components, Vue Router, Pinia
componentes: Vuetify 3, Element Plus, Vite, Vitest
temas: reactividad, propiedades computadas, watchers, composables, provide/inject, slots, emits, props
temas: gestión de estado, diseño de stores, arquitectura de componentes, carga diferida, división de código
Bibliotecas y Frameworks de UI
componentes: Vuetify 3, Element Plus temas: diseño responsivo, material design, bibliotecas de componentes, validación de formularios, tablas de datos, diálogos, cajones de navegación
Visualización de Datos
componentes: D3.js, Chart.js, Leaflet temas: gráficos interactivos, visualización de series temporales, mapeo geoespacial, SVG, renderizado canvas temas: gráficos de barras, gráficos de líneas, diagramas de dispersión, mapas de calor, diagramas de Gantt, capas de mapa, tooltips, zoom, paneo
Estándares Web
habilidades: HTML5, CSS3, SVG, diseño responsivo temas: SPA (Aplicación de Página Única), enrutamiento del lado del cliente, AJAX, consumo de API REST, JSON, WebSockets, Server-Sent Events
Desarrollo Backend
Python
componentes: Python 3, Flask, SQLAlchemy, Alembic temas: diseño de API REST, manejo de solicitudes, middleware, manejo de errores, logging temas: entornos virtuales, pip, gestión de paquetes, gestión de dependencias
Diseño de APIs
temas: servicios RESTful, diseño de endpoints, métodos HTTP, códigos de estado, paginación, filtrado, ordenamiento temas: autenticación, autorización, autenticación basada en tokens, Azure AD, MSAL, OAuth 2.0 temas: documentación de APIs, patrones de solicitud/respuesta, manejo de errores, validación
Bases de Datos
Bases de Datos Relacionales
componentes: PostgreSQL, MySQL, MariaDB, SQLite temas: SQL, diseño de esquemas, normalización, indexación, optimización de consultas, joins, subconsultas, vistas temas: procedimientos almacenados, triggers, restricciones, claves foráneas, transacciones, ACID temas: administración de bases de datos, respaldo y recuperación, replicación, ajuste de rendimiento
Herramientas de Bases de Datos
herramientas: psql, pgAdmin, MySQL Workbench, DBeaver temas: migración de bases de datos, ETL, importación/exportación de datos, scripting SQL
Infraestructura y GNU/Linux
Sistemas GNU/Linux
distribuciones: Debian, Ubuntu, CentOS, Red Hat Enterprise Linux temas: administración de sistemas, gestión de paquetes (apt, yum, dpkg), configuración de kernel, parámetros de kernel temas: systemd, sistemas de inicio, gestión de servicios, gestión de procesos, cron, gestión de logs temas: sistemas de archivos (ext4, XFS, NFS, Samba/CIFS), gestión de discos, LVM, RAID temas: gestión de usuarios, permisos, ACLs, PAM, sudo, hardening de seguridad
Redes
servicios: DNS (BIND), DHCP, NIS, NTP servicios: proxy web (Squid), proxy inverso, PAC (Proxy Auto-Configuration) servicios: firewalls (iptables, nftables), NAT, redirección de puertos, VPN temas: TCP/IP, enrutamiento, switching, VLANs, subnetting, resolución de problemas de red herramientas: tcpdump, wireshark, nmap, netstat, ss, traceroute, dig, ping
Correo Electrónico y Comunicación
componentes: Postfix, Sendmail, Dovecot, UUCP temas: SMTP, IMAP, POP3, relay de correo, filtrado de spam, detección de virus, SPF, DKIM, DMARC temas: listas de correo, administración de servidores de correo, seguridad de correo electrónico
Servidores Web
componentes: Apache HTTP Server, Nginx temas: virtual hosts, SSL/TLS, HTTPS, Let’s Encrypt, proxy inverso, balanceo de carga temas: .htaccess, reescritura de URLs, control de acceso, ajuste de rendimiento, caché
Respaldo y Almacenamiento
componentes: Bacula, rsync, tar temas: estrategias de respaldo, respaldo completo/incremental/diferencial, almacenamiento en cinta, respaldo en red temas: recuperación ante desastres, rotación de respaldos, pruebas de restauración, respaldo remoto
Automatización y DevOps
Infraestructura como Código
herramientas: Ansible, Terraform temas: gestión de configuración, playbooks, roles, inventarios, variables, plantillas (Jinja2) temas: idempotencia, convergencia, configuración de estado deseado, detección de desviaciones temas: aprovisionamiento de infraestructura, gestión de estado, ciclo de vida de recursos, módulos
Gestión de Configuración
herramientas: Ansible, Puppet (legado) temas: configuración centralizada, gestión de flotas, convergencia de configuración, basado en agentes vs sin agentes temas: aprovisionamiento de servidores, aprovisionamiento de escritorios, configuración de SO, despliegue de aplicaciones
CI/CD
componentes: GitLab, Jenkins, Docker temas: integración continua, entrega continua, pipelines de construcción, pruebas automatizadas temas: gestión de artefactos, automatización de despliegues, gestión de entornos, builds contenerizados
Control de Versiones
herramientas: Git, GitLab, GitHub, Bitbucket temas: estrategias de ramificación, flujos de merge, pull requests, revisión de código, gestión de repositorios
Virtualización y Nube
Virtualización y Contenedores
componentes: QEMU, libvirt, KVM, VirtualBox, VMware ESXi, vserver contenedores: Docker, Docker Compose, imágenes de contenedores, registros de contenedores herramientas: Vagrant, virsh, virt-manager temas: hipervisores (Tipo 1, Tipo 2), gestión de máquinas virtuales, snapshots, clonación temas: aplicaciones contenerizadas, orquestación de contenedores, contenedores de desarrollo temas: virtualización tipo contenedor (vserver), aislamiento de recursos, redes virtuales temas: entornos reproducibles, entornos de prueba, entornos de desarrollo
Plataformas en la Nube
plataformas: AWS, Digital Ocean, Tektonic temas: aprovisionamiento en la nube, servidores privados virtuales, almacenamiento en la nube, redes en la nube temas: escalamiento de infraestructura, gestión de costos, seguridad en la nube, gestión de claves SSH
Sector Energético
Operaciones de Red y Sistemas de Potencia
temas: optimización topológica de transmisión, análisis de congestión de redes, reconfiguración de transmisión temas: confiabilidad de la red, condiciones de emergencia, cuellos de botella de congestión, costos operativos temas: análisis de flujo de potencia, redundancia de red, operaciones de red eléctrica, mercados de electricidad
SCADA y Software de Servicios Públicos
temas: SCADA (Control de Supervisión y Adquisición de Datos), evaluación y selección de software SCADA temas: gestión de servicios públicos, sistemas de lectura de medidores, sistemas portátiles de ingreso de mediciones temas: distribución de energía, operaciones de empresas provinciales de energía
Sistemas Operativos
Internos del Sistema
temas: diseño de sistemas operativos, arquitectura de microkernel (MINIX 3), kernels monolíticos temas: controladores de dispositivos, sistemas de archivos, manejo de interrupciones (hardware y software), planificación de CPU temas: gestión de procesos, gestión de memoria, comunicación entre procesos, llamadas al sistema lenguajes: C (programación de kernel), assembler (x86)
Unix y Linux
sistemas: Debian GNU/Linux, Ubuntu, CentOS, RHEL, SCO Unix temas: POSIX, scripting de shell, programación de sistemas, configuración de kernel, proceso de arranque temas: arranque remoto, PXE, instalación por red, medios de instalación personalizados
Docencia y Capacitación
Materias Universitarias Dictadas
materias: Paradigmas de Programación (Smalltalk, Scheme, Prolog), Diseño e Implementación de Sistemas Operativos (MINIX 3) materias: Inteligencia Artificial, Ingeniería de Software para Aplicaciones de Internet materias: Sistemas de Bases de Datos Avanzados, Introducción a la Programación
Capacitación Profesional
temas: administración de sistemas GNU/Linux, administración de servidores Debian, análisis de rendimiento temas: desarrollo curricular, laboratorios prácticos, supervisión de proyectos de estudiantes temas: enseñanza basada en paradigmas: funcional (Scheme), lógica (Prolog), orientada a objetos (Smalltalk)
Universidades
instituciones: Universidad Tecnológica Nacional (UTN FRSF), Universidad Católica de Santiago del Estero (UCSE), Universidad Adventista del Plata (UAP) roles: Jefe de Trabajos Prácticos, Profesor Adjunto
Metodologías y Prácticas
Prácticas de Desarrollo
temas: Agile, Kanban, revisión de código, programación en pares, desarrollo dirigido por pruebas temas: mejora continua, desarrollo iterativo, planificación de sprints temas: gestión de deuda técnica, refactorización, documentación
Prácticas de Infraestructura
temas: Infraestructura como Código (IaC), gestión de configuración, entornos reproducibles temas: monitoreo, logging, alertas, respuesta a incidentes, resolución de problemas temas: planificación de capacidad, análisis de rendimiento, identificación de cuellos de botella
Gestión de Proyectos
temas: sistemas de tickets, seguimiento de ítems de trabajo, gestión de base de conocimiento temas: coordinación de equipos, mentoría técnica, colaboración entre equipos temas: relevamiento de requisitos, propuestas técnicas, estimación
Internacionalización
temas: I18n (internacionalización), l10n (localización), configuración regional temas: codificación de caracteres, Unicode, soporte multi-idioma en aplicaciones temas: interfaces traducidas, soporte derecha-a-izquierda, formato de fechas/números
Herramientas y Editores
editores: Vim, VS Code herramientas: Git, Docker, Make, SSH, tmux herramientas: psql, mysql, curl, wget, jq temas: scripting de shell (Bash), dominio de línea de comandos, scripts de automatización
Contacto y Enlaces
- Email: cesar.ballardini@gmail.com
- LinkedIn: linkedin.com/in/cesar-ballardini
- GitHub: github.com/CesarBallardini
- Blog: katra.ballardini.com.ar
- Servicios de Consultoría: Consultoría
- CV Completo: CV