Oblek

Septiembre 2022 - Septiembre 2023

Estos son los proyectos más relevantes que asumí en Oblek:

Migración de la base de código de OracleDB a MySQL

Cuando me uní a Oblek, toda la base de código de la empresa se estaba migrando a MySQL. Me encargaron migrar varias aplicaciones, incluyendo la principal, una aplicación de PHP + JavaScript que dependía en gran medida de la sintaxis y características de OracleDB. Gran parte del código no estaba documentado, por lo que necesitábamos hacer ingeniería inversa y documentar el código para entender qué hacía y cómo lo hacía, de manera que nuestros cambios no afectaran la funcionalidad de las muchas aplicaciones que estábamos migrando.

Optimización de búsqueda de texto completo en bases de datos

Uno de los problemas que surgieron de la migración fue la sintaxis incompatible entre OracleDB y MySQL para la búsqueda de texto completo. OracleDB utiliza CONTAINS, lo que no funciona en MySQL. Esto resultó en una necesidad urgente de encontrar una manera de realizar búsquedas de palabras clave intensivas en MySQL, ya que todos los procesos de la empresa dependían de ello. Asumí la tarea y, después de algunas investigaciones, encontré una forma de realizar búsquedas de texto completo en MySQL e implementé la solución, después de realizar pruebas de concepto, pruebas y documentación del proceso. También necesitábamos ajustar la configuración de la base de datos, incluyendo índices y otros parámetros, para hacer las búsquedas eficientes y útiles para nuestras aplicaciones.

Desarrollo de un Sistema de Transcripción de Radio y Televisión de Voz a Texto

Este es, con diferencia, el proyecto más desafiante e interesante que asumí en mi carrera profesional. El proyecto consistía en desarrollar un sistema que transcribiera cientos de horas de grabaciones de radio y televisión a texto en tiempo real y luego las indexara en una base de datos para que pudieran ser buscadas por palabras clave. El sistema se desarrolló en Python, utilizando la biblioteca Vosk para reconocimiento de voz, MySQL para la base de datos y React para el frontend.

La parte interesante de este proyecto fue el uso de una biblioteca de reconocimiento de voz gratuita y de código abierto, Vosk, de una manera que nos permitiera transcribir cientos de horas de audio en tiempo real y con la mínima cantidad de recursos. Diseñé un algoritmo basado en la concurrencia, con muchos servidores "transcriptores" diferentes comunicándose con un servidor central que gestionaría todos los datos.

Otras Responsabilidades