Enciclopedia de Perfiles TI: Vol 2

Este es el segundo volumen de la Enciclopedia de Perfiles TI, si no has leído el primer volumen te invitamos a leerlo, ya que retomaremos algunos términos de programación de ese volumen.

Lee el primer volumen de la Enciclopedia aquí.  

En este volumen vamos a explicar qué hacen los UI/UX, Administradores de Base de datos, Testers y Analistas de Sistemas, cuál es su rol dentro de una empresa y qué tecnologías pueden conocer. 

Antes de explicar estos perfiles, tienes que conocer algunos términos de tecnología, para que puedas comprender mejor el rol de estos perfiles. 

 

¿Qué es un Bug?

 

Un bug es un error en el código de un programa. 

Alguna vez haz hecho clic en el botón de una página y no pasa nada, o haz entrado a un sitio web y empieza a parpadear, o el programa simplemente se cierra sin causa aparente.

Estos problemas son causados por errores en el código de un programa, o como le llaman usualmente los desarrolladores: “bugs”.

 

¿Qué es Producción?

 

Producción es la etapa en la que un código ya está reflejado en el sistema.

¿Has escuchado a un programador decir “los cambios ya están en producción”?

Esto quiere decir que los usuarios del programa ya pueden ver los cambios que se hicieron en la aplicación. Ya sea un cambio de diseño o una nueva herramienta en la plataforma. 

 

¿Qué es un Motor de base de datos?

 

Es una herramienta para manejar bases de datos. Con los motores de base de datos se pueden crear, consultar, actualizar y borrar información de una base de datos. 

 

Ahora que hemos dejado en claro estos términos, podemos avanzar a la descripción de los perfiles. 

 

Descripción de Perfiles TI

 

¿Qué es un UI/UX Designer?

 

Para entender este perfil, primero debemos de entender qué significan sus acrónimos. 

UI significa User Interface (o Interfaz de usuario), es lo que el usuario puede ver en una aplicación. Mientras que UX es User Experience (o Experiencia de Usuario) y es lo que el usuario siente cuando usa una aplicación. 

Un UI Designer diseña cómo se va a ver la página web o app en todos los dispositivos como computadora, celular y tablet. Son perfiles con bases fuertes en diseño, hacen que la aplicación se vea bien. Ellos deciden dónde va a ir la barra de búsqueda, donde van a estar los botones, el color de fondo de una sección, los iconos que se van a usar en la página, el color de los enlaces, entre otros elementos de diseño.

Por otro lado, el UX Designer se encarga de crear una buena experiencia para el usuario a través del diseño de la aplicación. 

Para explicar mejor cuál es el trabajo de un UX, pondremos de ejemplo la siguiente imagen con dos versiones de una app. 

ux/ui

En la primera versión  tenemos el diseño de una app que se ve atractiva y cumple con su propósito. El usuario pueda seleccionar el tamaño de su café y decidir cuántos quiere comprar. Este sería el trabajo de un UI.  

En la segunda versión podemos ver la misma app pero con un diseño que aporta más valor al usuario y mejora su experiencia usando la plataforma. En esta versión, el usuario puede leer la descripción del producto y agregarlo a favoritos para encontrarlo más rápido en el futuro. Este es el trabajo del UX. 

Aunque el UI y UX Design son diferentes, la mayoría de las empresas lo tratan como un mismo rol. Basta con meterte a un portal de empleo para encontrar decenas de vacantes con el título UI/UX. 

Si leíste el volumen pasado de la Enciclopedia tal vez te estarás preguntando ¿Pero el diseño de una página no lo hacía el Front-End?. Tradicionalmente no, el Front-End no diseña.

El UI/UX  le pasa al Front-End un mockup o diseño de cómo se tiene que ver la aplicación. El Front-End, se encarga de poner el diseño del UI/UX en código. Sin embargo algunas empresas pueden buscar un perfil híbrido que complemente las dos posiciones, alguien que cree el diseño visual de la página y que también pueda pasarlo a código a través de HTML, CSS y JavaScript. 

Los UI/UX usan herramientas de prototipado para hacer mockups del diseño de una app o página web, como Invision, Adobe Experience Design, Origami Studio o Sketch.

 

¿Qué es un Administrador de base de datos o DBA (Data Base Administrator)?

 

Hoy en día las empresas grandes generan millones de datos. Una empresa puede generar información de sus productos vendidos, productos comprados, proveedores y clientes. Otro ejemplo serían las páginas web que pueden guardar información de sus usuarios como nombre, apellido, género, edad, correo, etc. 

El Administrador de Base de Datos es el encargado de crear una base de datos en la que las empresas puedan guardar toda la información que generan. Los DBA son perfiles solicitados mayormente por empresas que ya generan millones de datos al mes y requieren más estabilidad e integridad en la información que guardan. En empresas pequeñas o startups que apenas generan miles de datos al mes, la base de datos es generalmente manejada por un desarrollador de software. 

Para manejar una base de datos efectivamente, los DBA necesitan poder ingresar nueva información, borrar datos ya no necesarios, consultar los datos en cualquier momento, crear respaldos y dar acceso a otros usuarios para manejar la base de datos. 

Para realizar estos procesos, los DBA usan motores de base de datos como MySql, PostgreSQL, MongoDB, Oracle SQL o SQL Server, SQLITE entre otros más. 

 

¿Qué es un Testers / QA (Quality Assurance)?

Los desarrolladores cometen bugs en su código que pueden ocasionar fallas en el funcionamiento de un programa. Los encargados de comprobar que un programa funciona bien y encontrar fallas antes de que salgan a producción son los testers o QA (Quality Assurance).

Diseñan y ejecutan pruebas sobre un programa para validar que funcione bien y encontrar cualquier bug o problema que pueda tener el programa antes de que sea usado por los usuarios finales. 

Existen principalmente dos métodos para realizar testing y encontrar errores en un programa: testing manual y testing automatizado.

El testing manual es literalmente una persona que usa el programa siguiendo una serie de instrucciones previamente definidas, prueban las funcionalidades, verificando que estas trabajen correctamente, para después reportar las fallas encontradas, con tal de mejorar la calidad del producto final.

En el testing automatizado se crean códigos para poner a prueba distintas funcionalidades de un programa, generalmente estas son usadas pruebas de regresión, facilitando la aplicación de pruebas anteriores en un tiempo corto periodo de tiempo. De una manera muy simplista podríamos decir que el testing automatizado son programas diseñados para poner a prueba las funcionalidades de un programa siguiendo una serie de pasos. Para realizar estas pruebas los testers usan lenguajes de programación como Java, Python y tecnologías cómo Selenium, Appium. 

 

¿Qué es un Analista de Sistemas?

 

El Analista de Sistemas es la conexión entre el cliente que solicita un programa y el equipo de tecnología que lo va a desarrollar. 

Analiza el programa que el cliente solicita, determina si el proyecto es viable con las tecnologías disponibles y le comunica al equipo de desarrollo los requerimientos con los que debe cumplir el programa. Además se asegura que el programa alcance las expectativas del cliente. 

Los Analistas de Sistemas tienen conocimientos fuertes en software para evaluar la viabilidad de un proyecto y comunicar de manera fácil a los desarrolladores lo que debe de hacer el programa. Sin embargo, su rol no involucra escribir código. Debe de conocer las tecnologías, lenguajes de programación y frameworks con los que trabaja su equipo, para comprender el alcance que pueden tener en los proyectos, pero él no las usa.

Básicamente las habilidades de los Analistas de Sistemas radican en sus soft skills para escuchar lo que quiere el cliente y comunicárselo de manera efectiva al equipo de desarrolladores. 

Ya puedes encontrar el resumen de de estos perfiles en la plantilla de excel de la enciclopedia de perfiles TI. 

 

perfiles ti vol 2

Accede a la plantilla aquí

En el siguiente Volumen de la Enciclopedia veremos qué son los Arquitectos de Software, Administradores de servidores y DevOps. 

[cta_hubspot id=9349]