Descripción
Cada día, Global Payments permite que millones de personas transfieran dinero entre compradores y vendedores mediante nuestras soluciones de pagos para tarjetas de crédito, débito, prepago y servicios comerciales. Nuestro equipo mundial ayuda a más de 3 millones de empresas, más de 1.300 instituciones financieras y más de 600 millones de titulares de tarjetas a crecer con confianza y lograr resultados extraordinarios. Nos impulsa nuestra pasión por el éxito, y nos enorgullece ofrecer tecnología y soluciones de software de pagos de clase mundial. Únase a nuestro dinámico equipo y deje su huella en el panorama tecnológico de los pagos del futuro.
**Resumen de este puesto**
------------------------
Realiza y participa en el desarrollo y las pruebas de aplicaciones para garantizar la calidad continua y la capacidad de prueba del código durante todo el ciclo de vida del desarrollo de software. Integra la calidad en el proceso de desarrollo de software mediante suites de pruebas automatizadas que ofrecen una visión integral, desde la calidad del código hasta su funcionalidad. Aplica paradigmas de calidad para proporcionar calidad en tiempo real mediante la automatización y pruebas de regresión frecuentes. Diseña, desarrolla y mantiene marcos de automatización y suites de pruebas automatizadas, así como scripts, integrados con la integración continua, las pruebas, la implementación y la entrega. Realiza pruebas de rendimiento, carga, seguridad y virtualización de servicios.
**¿Cuál será su función?**
----------------------------
* Participa en todas las etapas del ciclo de vida del desarrollo de software y es responsable de producir código de alta calidad. Colabora con sus pares para identificar y recomendar prácticas de aseguramiento de la calidad desde la fuente mediante la automatización. Realiza análisis de impacto, evalúa e identifica los efectos sobre las suites de pruebas de regresión, la capacidad de prueba del código y el rendimiento de la aplicación, con el fin de reducir las influencias negativas sobre las pruebas continuas. Realiza verificaciones de calidad junto con la actualización de los scripts de automatización. Identifica y diseña suites de pruebas para el desarrollo guiado por pruebas (TDD) y el desarrollo guiado por comportamiento (BDD), permitiendo realizar pruebas tempranas y frecuentes conforme se desarrolla el software. Identifica mejoras de procesos y medidas de calidad continua a lo largo del ciclo de vida del desarrollo.
* Escribe y ejecuta pruebas de aplicaciones a nivel de código fuente para prevenir errores ocultos (es decir, pruebas de caja blanca) dentro de las pruebas unitarias y de componentes. Identifica y sugiere mejoras para la calidad del código con el fin de subsanar deficiencias relacionadas con la funcionalidad, así como con la estructura del código, para optimizar su rendimiento y mantenibilidad. Construye, mantiene y revisa suites de pruebas unitarias y de componentes de nivel medio, y realiza pruebas automatizadas de caja blanca. Identifica errores en la codificación y problemas de calidad del código. Integra las suites de pruebas de caja blanca con herramientas de integración continua (CI). Programa y crea casos de prueba de nivel medio mediante herramientas de pruebas unitarias y de componentes para pruebas a nivel de código.
* Desarrolla herramientas, marcos y utilidades de software de complejidad moderada para actividades de validación/verificación y pruebas funcionales de extremo a extremo del software. Identifica y recomienda herramientas y marcos para pruebas, y crea herramientas automatizadas para uso genérico y mantenibilidad. Escribe código de complejidad moderada que utiliza o ejercita componentes que no son de interfaz de usuario (UI), como interfaces de programación de aplicaciones (API), API RESTful y servicios web, similares al comportamiento del usuario final, para desarrollar marcos de pruebas. Integra las suites automatizadas con herramientas de integración continua (CI) para su ejecución frecuente.
* Instala y utiliza marcos de CI de complejidad moderada en pruebas continuas y despliegue/entrega continua. Construye, personaliza e implementa entornos de pruebas y marcos de automatización de pruebas de complejidad moderada. Realiza tareas de scripting, generación de datos y otros métodos de complejidad moderada para mantener la infraestructura de automatización durante todo el desarrollo. Integra herramientas de CI con otra infraestructura de pruebas y desarrolla informes/métricas de complejidad moderada sobre CI.
* Desarrolla scripts de prueba, datos de prueba, y analiza/interpreta pruebas de rendimiento, carga y seguridad. Realiza pruebas, análisis e interpreta los resultados utilizando herramientas de virtualización de servicios que emulan el comportamiento de los componentes de sistemas dependientes necesarios que no están disponibles o son de difícil acceso. Identifica oportunidades de pruebas de virtualización, así como enfoques y diseños para probar entornos virtualizados. Identifica oportunidades de pruebas de rendimiento, así como enfoques y diseños para evaluar el rendimiento, la carga, la seguridad y la virtualización de servicios de la aplicación. Analiza el rendimiento y las respuestas de los sistemas y bases de datos bajo carga. Dirige las pruebas para evitar cuellos de botella comunes en el rendimiento de las aplicaciones. Mantiene y administra procedimientos, metodologías y/o estándares de aplicación, incluidos los requisitos de cumplimiento de pruebas relacionados con la industria de tarjetas de pago y la seguridad, mediante la automatización y pruebas de seguridad integradas durante el desarrollo. Aplica conceptos de virtualización para identificar pruebas y escenarios de aplicación afectados por la virtualización. Incorpora pruebas de rendimiento, carga y seguridad en los entornos de CI.
* Trabaja con partes interesadas, áreas comerciales, desarrolladores y analistas de pruebas para elaborar planes, condiciones y casos de prueba más complejos (conjunto de entradas, condiciones previas a la ejecución y resultados esperados diseñados con un objetivo específico, como ejercitar una ruta particular del programa o verificar el cumplimiento de un requisito específico) destinados a su uso en las pruebas. Desarrolla y aplica mejores prácticas para la preparación de datos de prueba y la ejecución de conjuntos de pruebas. Colabora con los programadores para crear ciertas condiciones de cuenta y ejecutar requisitos especiales de prueba para la validación de pruebas. Demuestra un amplio conocimiento de múltiples entornos al evaluar, interpretar y comunicar una comprensión de los diversos componentes de los sistemas y aplicaciones ante la dirección.
* Actúa como punto único de contacto para proyectos de clientes asignados de complejidad moderada en relación con las actividades de ingeniería de pruebas. Coordina las actividades de prueba asignadas al equipo de pruebas, incluida la revisión de los planes, casos y scripts de prueba del cliente, la priorización de la ejecución de pruebas cuando sea necesario y la provisión de retroalimentación a clientes internos y externos.
**¿Qué buscamos en este puesto?**
-----------------------------------------
**Requisitos mínimos**
* Título universitario: Ingeniería de Software, Sistemas de Información u otro título técnico; se considerará experiencia adicional en sustitución del título.
* Experiencia profesional mínima típica: 6 años de experiencia relevante en pruebas de software, programación, diseño y desarrollo.
**Requisitos preferidos**
* Título de maestría: Ingeniería de Software, Sistemas de Información u otro título técnico.
* Experiencia profesional mínima típica: 8 años de experiencia relevante en el desarrollo de estrategias de pruebas automatizadas en diversos entornos y marcos.
**¿Cuáles son las habilidades y capacidades deseadas?**
-------------------------------------------------
* Habilidades/conocimientos: Con amplia experiencia, aplica conceptos profesionales y los objetivos de la empresa para resolver problemas complejos de forma creativa y eficaz. En este nivel existen algunas barreras de entrada (por ejemplo, revisión departamental o por pares).
* Complejidad del puesto: Trabaja en asuntos complejos donde el análisis de situaciones o datos requiere una evaluación exhaustiva de factores variables. Ejerce criterio al seleccionar métodos, técnicas y criterios de evaluación para obtener resultados. Establece contactos clave fuera de su área de especialización.
* Supervisión: Determina los métodos y procedimientos para nuevas tareas y puede coordinar las actividades de otras personas (Líder de equipo).
* Ciclo de vida del desarrollo de software / Metodologías de pruebas: Ágil — Scrum, Kanban, Desarrollo guiado por pruebas, Desarrollo guiado por comportamiento, etc.
* Lenguajes de programación: Java, C#, Perl, Python, Groovy, Oracle, SQL, etc.
* Herramientas de pruebas: Gestión del ciclo de vida de aplicaciones, pruebas unitarias, seguridad, interfaces de programación de aplicaciones, dispositivos móviles, integración continua, virtualización de servicios, etc.
Global Payments Inc. es un empleador que ofrece igualdad de oportunidades. Global Payments brinda oportunidades de empleo iguales a todos sus empleados y solicitantes sin tener en cuenta raza, color, religión, sexo (incluido el embarazo), origen nacional, ascendencia, edad, estado civil, orientación sexual, identidad o expresión de género, discapacidad, condición de veterano, información genética ni ningún otro motivo protegido por la ley. Si desea solicitar adaptaciones razonables relacionadas con la postulación a un empleo o brindar comentarios sobre la accesibilidad de este sitio web, comuníquese con jobs@globalpayments.com.