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 para comerciantes. 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 aplicar una calidad continua y una 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 garantizar una 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 y 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), lo que permite realizar pruebas tempranas y frecuentes a medida que 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 a fin de corregir deficiencias relacionadas con la funcionalidad, así como con la estructura del código, para mejorar su rendimiento y mantenibilidad. Construye, mantiene y revisa suites de pruebas unitarias y de componentes de nivel intermedio 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 intermedio utilizando 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 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 sin interfaz de usuario (UI), como interfaces de programación de aplicaciones (API), API RESTful y servicios web similares a los utilizados por el usuario final, para desarrollar marcos de pruebas. Integra 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 prueba y marcos de automatización de pruebas de complejidad moderada. Realiza 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 mediante herramientas de prueba de virtualización de servicios que emulan el comportamiento de los componentes del sistema dependiente necesarios que no están disponibles o son de difícil acceso. Identifica oportunidades de pruebas de virtualización con enfoques y diseños específicos para probar entornos virtualizados. Identifica oportunidades de pruebas de rendimiento con enfoques y diseños específicos 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, incluyendo el cumplimiento de las pruebas relacionadas 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 desarrollados para un objetivo específico, como ejercitar una ruta específica del programa o verificar el cumplimiento de un requisito específico) que se utilizarán 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 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 posgrado: 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 una 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 por el departamento 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 (TDD), Desarrollo guiado por comportamiento (BDD), 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, interfaz de programación de aplicaciones (API), 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 o cualquier otra base protegida por la ley. Si desea solicitar adaptaciones razonables relacionadas con la solicitud de empleo o proporcionar comentarios sobre la accesibilidad de este sitio web, comuníquese con jobs@globalpayments.com.