BOURNEMOUTH, DORSET, United Kingdom
5 days ago
Test Automation Software Engineer - Java

You’re ready to gain the skills and experience needed to grow within your role and advance your career — and we have the perfect software engineering opportunity for you. 

As a Test Automation Software Engineer - Java at JPMorgan Chase within the Liquidity and Account Solutions team in Payments Technology, you are part of an agile team that works to enhance, design, deliver and test the software components of the firm’s state-of-the-art technology products in a secure, stable, and scalable way. As an emerging member of a software engineering team, you execute software solutions through the design, development, and technical troubleshooting of multiple components within a technical product, application, or system, while gaining the skills and experience needed to grow within your role.

 

Job responsibilities

Drive the design, development and maintenance of robust, scalable test automation frameworks to validate a mission critical, low-latency and high-throughput complex liquidity calculation system Architect and build test automation solutions and reference services using Java language to validate software functionality and performance Intelligently apply test automation frameworks to enhance the test landscape to build, execute and maintain performance tests using tools like JMeter, Gatling and Blazemeter Executes software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems Creates secure and high-quality production code and maintains algorithms that run synchronously with appropriate systems Produces architecture and design artifacts for complex applications while being accountable for ensuring design constraints are met by software code development Gathers, analyzes, synthesizes, and develops visualizations and reporting from large, diverse data sets in service of continuous improvement of software applications and systems Proactively identifies hidden problems and patterns in data and uses these insights to drive improvements to coding hygiene and system architecture Contributes to software engineering communities of practice and events that explore new and emerging technologies Adds to team culture of diversity, equity, inclusion, and respect Works collaboratively as part of a global team Works closely with stakeholders to identify test requirements and strategies Conducts detailed peer reviews of code developed by colleagues Supports junior colleagues with the growth of their technical skills Provides out of hours application support and coordination of Production releases

 

Required qualifications, capabilities, and skills

Formal training or certification on software engineering concepts or a related discipline and proficient applied experience Proficient in coding in one or more object-orientated languages, including Java 17+ with Sprint Boot Experience of creating thread-safe concurrent code in Java or another JVM based language Proficient in using SQL to query large relational datasets performantly Experience with Docker and running Production workloads on Kubernetes Solid understanding of the HTTP protocol and REST APIs Experience in applying appropriate data structures and algorithms to solve business and technical problems Hands-on practical experience in secure system design, application development, automated regression testing, performance profiling and operational stability  Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages Overall knowledge of the Software Development Life Cycle  Solid understanding of agile methodologies such as Scrum, CI/CD, Application Resiliency, and Security Knowledge of system and software quality assurance best practices and methodologies including Behaviour Driven Development (BDD) and Test-Driven Development (TDD), Regression, Integration, Unit, Contract, Component, End to End and performance testing  Expertise in application, data, and infrastructure architecture disciplines Knowledge of industry-wide technology trends and best practices Strong communication and teamwork skills to collaborate effectively with cross-functional teams and achieve common goals

 

Preferred qualifications, capabilities, and skills

Hands-on experience another statically compiled language like Golang, Rust or C++ Hands-on experience of building test automation frameworks for complex, distributed microservice architectures Hands-on experience of software performance testing using tools like Blazemeter, JMeter and Gatling Experience of API Functional Testing, Contract Testing and related tools (e.g. Postman and RestAssured) Experience using and designing schemas/data structures in resilient SQL and NoSQL databases (e.g. CockroachDB) Experience with gRPC Knowledge of data serialisation formats (e.g. Google Protocol Buffers and Parquet) Experience with caching technologies, e.g. Redis Experience with Infrastructure as Code software, e.g. Terraform Good knowledge of the Unix/Linux Operating System and system utilities Certified Kubernetes knowledge (e.g. CKAD) Certified public cloud technology knowledge (e.g. AWS)
Confirm your E-mail: Send Email