Job
Description
Test Engineering is integral to bringing a modern, automation-first, and team-based approach to testing software and data services. Aligned with Agile principles, as a Test Engineer, you play a crucial role in empowering team members to engage in conversations, establish behaviors, and set expectations that foster Agile concepts. Your expertise in software quality techniques and tools will be utilized in a collaborative, team-based environment where you will contribute to designing optimal testing approaches. Working across multiple tech stacks, you will implement automation using various tools, enabling the team to maintain and enhance velocity. Your learning mindset will enable you to take on new challenges and develop areas of expertise, contributing to the continual elevation of the Quality Engineering capability. In this role, you are expected to have experience working in an agile team-based environment, consistently enhancing team velocity. Proficiency in using code to create reliable test automation is essential. You will be responsible for defining clear acceptance criteria, facilitating defect triage, and generating quality metrics. Your expertise may be deep in a specific area of modern software quality or broad across technology solutions. A computer science-based mindset is required, with a technology-based education being advantageous. **Responsibilities:** - Develop and enhance test plans for complex applications. - Translate business requirements into tests that optimize coverage and mitigate risk (target test coverage of 95%). - Create dependable test automation with high reliability and relevancy (target test automation of 95%). - Implement automation for new business functionality using test automation frameworks. - Evaluate and provide guidance on the testability of user stories, including acceptance criteria, non-functional requirements, and the definition of done. - Collaborate closely with engineering teams, demonstrating strong debugging skills. - Share knowledge within your team and the organization, recommending new tools and processes to enhance productivity and quality. **Qualifications:** - 5+ years of experience in a Test Engineer or similar role. - 1+ year of experience in Java, Python, or JavaScript development at an intermediate to advanced level. - 4+ years of experience with Test Automation frameworks (e.g., Selenium, Junit, Nunit, Robot, etc.). - Experience in developing functional tests (e.g., integration, interface/API testing, and unit testing). - Familiarity with web service technologies (e.g., XML, REST, SOAP). - Bachelor's degree in engineering, computer science, computer engineering, or equivalent work experience. **Preferred Qualifications:** - Experience in developing non-functional tests (e.g., performance testing, load testing, stress testing, security testing, etc.). - Proficiency in modern quality engineering tools as a strong technical individual contributor. - Knowledge of black-box and white-box testing. - Understanding of various deployment strategies (e.g., Blue/Green, Canary, A/B, etc.). - Familiarity with BDD and TDD. - Experience with Code Quality tools (e.g., SonarQube). - Experience with Security Scanning tools (e.g., Snyk, BlackDuck). - Experience with CI tools (e.g., Jenkins, GitLab, CircleCI). - Passion for ensuring excellence in product quality and reliability. - Excellent communication and problem-solving skills. Citi is an equal opportunity and affirmative action employer, encouraging all qualified individuals, including those with disabilities, to apply for career opportunities. Accessibility accommodations are available for applicants with disabilities.,