Sobre mi

Hola, espero que te encuentres muy bien, conoce un poco sobre mí y las capacidades que poseo como desarrollador.

  • ¿Cómo me describo?

    Me describo como persona autodidacta, analítica, diciplinada, adaptable, a la que le gusta mucho el deporte y viajar.

  • ¿Qué edad tengo?

    Actualmente tengo 25 años.

  • ¿Cuento con título profesional?

    Dispongo de título y cédula profesional. 

  • Nivel de inglés

    Inglés técnico

Considero que sigo aprendiendo mucho en este mundo del desarrollo y además pienso que la comunicación es una de las piezas más importantes de un equipo.

Si quieres conocer más sobre mí y leer una información más resumida de mi perfil como desarrollador, puedes descargar mi currículum haciendo clic aquí.

Introducción

En las siguientes secciones encontrarás una información más completa sobre las habilidades y conocimientos que adquirí a lo largo de 3 años desarrollando proyectos personales y cursos que he realizado. 

También hablaré sobre la experiencia profesional que tuve en DGTIC UNAM como desarrollador. Te contaré acerca del proceso de selección para llegar a trabajar en su equipo y sobre los conocimientos que adquirí al trabajar en conjunto con profesionales de otras áreas. 

Por último, en las secciones de programación, diseño adaptable, framework y bases de datos precisaré el nivel de mis habilidades que poseo en cada una de esas áreas. Asimismo, te contaré sobre los proyectos más representativos de cada sección. 

Experiencia

DESARROLLO Y DISEÑO DE SOFTWARE

Fue una capacitación para un programa de becarios en DGTIC UNAM, este programa tenía como objetivo reclutar a distintos profesionistas que estuvieran dispuestos a realizar pruebas, adquirir nuevos conocimientos y estudiar temas propuestos para trabajar con ellos en un proyecto real.

La capacitación tuvo una duración de 6 meses donde nos presentaron distintos temas relacionados con la ingeniería de software. 

Acontinuación te mencionaré algunos de esos temas.

  1. Introducción al desarrollo y diseño de software.
  2. SCRUM
  3. Análisis de requerimientos
  4. UML (Lenguaje unificado de modelado)
  5. Casos y escenarios de pruebas
  6. Modelado de casos de usos
  7. UX (Experiencia de usuario)
  8. UI (Interfaz de usuario)
  9. Aseguramiento de calidad
  10. GIT (sistema de control de versiones)
  11. Diseño de bases de datos(MySQL)

Además de todos los temas antes mencionados, también nos instruyeron en la parte de programación, los lenguajes que aprendimos fueron PHP, JavaScript, HTML, CSS y SQL. 

Cabe mencionar que hicimos prácticas, exámenes, algunas pruebas y actividades con un esquema real.

Al finalizar la capacitación, los responsables del programa reclutaron a los participantes más destacados y comprometidos.

A lo largo de esos 6 meses de preparación adquirí conocimientos sólidos en el desarrollo de software y básicamente obtuve buenas bases para abordar un proyecto de la manera más eficiente posible. 

Ahora conoces un resumen del proceso que lleve a cabo para llegar a trabajar con ellos. Si lo consideras necesario, te dejo el repositorio GitLab como prueba de algunas de esas actividades. Si te causa algún interés puedes contactarme y conocer un poco más a fondo todo lo que realice en esa capacitación. 

CMS Drupal

En forma de resumen, te contaré la experiencia de un año trabajando para DGTIC UNAM.

Formé parte de un gran equipo que estaba formado por muchos miembros, pero mencionaré a los que más recuerdo: al jefe de área, al responsable del proyecto(ingeniero a cargo), un diseñador y nosotros los desarrolladores, claro sin quitarle ningún mérito a los demás integrantes del equipo. Todos fueron muy profesionales, respetuosos y dedicados a su trabajo.

Mi primera actividad fue aprender Drupal desde cero, esto fue un reto porque no tenía idea de como funcionaba o si acaso que era. Sin embargo, con todo lo aprendido en la capacitación me sentí capaz de aprender en poco tiempo y así fue. También tuve que aprender a desplegar proyectos de Drupal en Devilbox y Docker composer, así como aprender a configurar mi entorno de trabajo en estas herramientas.

Las actividades siguientes fueron las migraciones de páginas completas de Drupal a una versión más reciente con bases de datos incluida. Esto como primeras actividades.

Después, cuando estaba más familiarizado con Drupal, empecé a desarrollar algunos módulos(con jQuery y  Bootstrap), crear vistas, contenidos, tablas con HTML, menús y algunas funciones. 

El aprendizaje que obtuve de esa experiencia fue muy motivadora, porque aprendí el valor de conformar parte de un equipo, el sentir que tienes una buena comunicación con tus compañeros y entender que con esfuerzo todo se puede lograr. No me queda más que agradecer por la oportunidad que me brindaron.

Te dejo en el siguiente enlace por si te interesa ver los créditos del equipo en el que estoy involucrado como desarrollador.

Diseño web adaptable

Conocimientos sólidos en maquetado, estilos, media queries, flexbox, grid, floats y animaciones. También funcionalidades, como por ejemplo, botones, barras de progreso y formularios.

En general, considero que tengo un nivel medio en el manejo de estilos y diseño, lo suficiente para crear páginas web atractivas. 

Soy relativamente nuevo en el desarrollo web, por lo tanto, no tengo un proyecto muy representativo que pueda mostrarte, pero he realizado otros proyectos que no están enfocados al diseño y adaptabilidad, sino más bien en las funcionalidades, que más adelante te contaré sobre ese proyecto.  

Sin embargo, te puedes hacer una idea de mi trabajo con este portafolio, que fue desarrollado únicamente con CSS, HTML, JavaScript y particles.js.   

Programación

Conocimientos sólidos de programación, variables, constantes, ciclos, condicionales, operadores, (POO) programación orientada a objetos, herencia, encapsulamiento, patrones de diseño, abstracción, polimorfismo y estructuras de datos, por ejemplo, colas, pilas, listas, etc.

El punto más fuerte de mí es la programación, ya que considero tener un buen nivel para desarrollar aplicaciones webs o de escritorio. Tal es el punto que me siento capaz de migrar otro lenguaje de programación y aprender en poco tiempo.

El lenguaje que más domino es Java, después PHP y como último JavaScript. He realizado numerosos ejercicios y proyectos que me han ayudado a mejorar mi lógica de programación. Puedes darle un vistazo en aquí.

También puedes visitar mi repositorio GitHub para que observes algunos de esos proyectos. Cabe aclarar que no todos los proyectos están ahí, porque considero que algunos son más sencillos que otros. 

Frameworks

Es un marco o entorno de trabajo que dispone de estándares que pueden facilitar la elaboración de un proyecto.   En otras palabras, podemos decir que es un conjunto de herramientas y librerías que se utilizan para desarrollar aplicaciones más fácilmente y de manera más eficiente.

Esto no significa que sea fácil de aprender, más bien cuando entiendes funcionalidades del framework puedes realizar proyectos de una manera más sencilla y rápida, sin necesidad de perder tiempo con otras cuestiones. 

Considero que en estos framework tengo el conocimiento necesario para poder desarrollar proyectos, sin ningún inconveniente. 

Bases de datos

Con la experiencia que obtuve en la capacitación más la participación en DGTIC UNAM y todos los trabajos personales que he realizado, logre modelar una base de datos para un sistema de una veterinaria. Este sistema tiene como objetivo ayudar a los médicos veterinarios a gestionar las ventas, citas, expedición de recetas, inventario, historial médico, registros y un sistema de roles para administrar la información.

Entonces considero que tengo los conocimientos necesarios para comprender o diseñar una base de datos, pero obviamente no me considero un experto en esta rama, sin embargo, conozco gran parte de la teoría.  

Algunas de las cosas que puedo hacer en las bases de datos son, eliminar, actualizar, crear, obtener información, consultas anidadas, consultas básicas, JOINS y algunas funciones.

En el siguiente enlace se encuentra una demo del sistema que desarrolle con Laravel, PHP y Bootstrap.  Los detalles del sistema se encuentran en el repositorio, ahí también encontrarás un manual de usuario que podría ayudarte a entender mejor el sistema.  Por el contrario, el sistema no cuenta con una adaptabilidad para dispositivos móviles porque es un sistema que desarrolle únicamente para pantallas grandes.


¡Nota importante! Para iniciar la demo debes ingresar las siguientes credenciales;

  • gmail: demo@gmail.com
  • contraseña: [@demo1_A.P[

También puedes ver un video demostrativo sobre el sistema en la sección de proyectos.

Cursos

JavaFX

Este curso lo tomé en la universidad como una oportunidad para mejorar mis habilidades y conocimientos en programación. Básicamente, este curso abordaba prácticas sobre como desarrollar aplicaciones de una manera más sencilla y rápida.

En el apartado de proyectos de mi portafolio puedes observar algunas esas aplicaciones, también ahí se encuentran los repositorios Git correspondientes de cada aplicación.

Big data: introducción, entorno y herramientas

Te contaré algunas de las cosas que aprendí. La primera fue que la información que generamos diariamente de forma digital no se destruye, sino que se utiliza para otros fines, es por ello que existen una cantidad exorbitante de datos, la cual es difícil de manejar si no tienes las herramientas y los conocimientos necesarios.

El hecho de navegar por internet, utilizar aplicaciones, o solo si tenemos el celular encendido, estamos generando información. Las empresas utilizan dicha información para averiguar los gustos, motivaciones y preferencias de nosotros los usuarios. También pueden averiguar patrones en toda esa gran cantidad de datos, por ejemplo, cuáles son los días más concurridos de una ciudad.

Habilidades Digitales

Este curso fue propuesto por Santander FESE (Fundación Educación Superior Empresa) donde presentaron muchos temas interesantes que en lo particular me llamaron la atención, es por eso que decidí participar. 

Los temas fueron los siguientes:

Inteligencia

  • Inteligencia artificial
  • Realidad virtual y aumentada
  • Big Data

Conectividad

  • La nube
  • Internet de las cosas
  • Ciberseguridad

Medios de producción

  • Robótica e impresión 3D

Biológicas

  • Biotecnología
  • Nanotecnología

"La evolución e innovación de la tecnología son algunas de las cosas que me mantienen encantado de este trabajo".