Job
Description
Role
Play a crucial part in a Senior Software Engineer role to help drive Quality and to build and implement test approaches, automation strategy, automation improvements and monitoring earlier in the development cycle. Hands-on developer who writes high quality, secure code that is modular, functional, and testable. Significant experience designing, building, and maintaining robust automated test frameworks for complex, enterprise-class web applicationsCollaborate closely with our development teams to enhance our existing software development processes.Write test scenario & test cases for Enterprise Application, within schedule and within estimated efforts.Write automated component, Integration & E2E test casesPerform peer review of automated test cases and mentor junior team membersParticipate in organization level process improvement and knowledge sharingPartner with developers to improve and automate test and release processes.Help make Quality as an integral part of the development process.Able to create acceptance and integration automation tests, integrate with Continuous integration (Jenkins/Bamboo) and code coverage tools (Sonar).Develops and implements QA standards, processes, tools, and methodologies; partners with other functions to establish testingBe skilled at explaining technical problems succinctly and clearly.Have advanced experience in core Java programing and the ability to provide technical leadership to senior members of staffHands on experience and sound knowledge of Java, Spring, JUnit, Eclipse IDE, Rest Assured, Jbehave/Cucumber frameworks, Databases (Oracle), APIs (REST/SOAP), Continuous Delivery concepts and tools such as Jenkins/Bamboo, vulnerability tools such as Sonar, Checkmarx/Fortify, etc.Have strong ownership of your teams software and are deep in the maintenance characteristics, runtime properties and dependencies including hardware, operating system, and build.Identifies and implements complex automation efforts; replicates and resolves production issues for single applicationDefines and implements best practices for end-to-end application Integration testing methodologies; focuses on emerging technologiesDocuments integration test strategies and test plans; translates complex system requirements and specs into test requirements and testing methodsSuccessfully ensured quality of one or more application codebases and alignment with development standardProvide Brownbag sessions on new and upcoming technologies, methodologies, and frameworks. Provide technical training to the team. Assist with selection of technical resources for the projects.Ensure compliance to the defined standards. Actively look for opportunities to modify and enhance standards per the needs of the department.Assist in examining commercially available and forthcoming industry technologies related to area of expertise. Research on current and upcoming technologies and application appropriate frameworks and provide recommendations to Management. Perform PoCs (Proof of Concept) and help Department in the selection of TechnologyEducation: Bachelor's degree in Information Systems, Information Technology, Computer Science or Engineering or equivalent experience. All About You: Experience in related field, Experience in delivering secure solutions in Financial Services Sector is preferred. Hands on experience of writing Test scenario & Test cases for Enterprise applicationsAdvanced knowledge and understanding of Software Engineering Concepts and Methodologies is required. Demonstrate MC Core Competencies. Advantage if you have payments expertise and experience/proficiency with cloud technologies (IaaS, PaaS, serverless technology, NoSQL databases), micro-service design understanding, API design, and distributed systemsExperience with XP, TDD and BDD in the software development processes and architecture patternsSkills/ Abilities: Ability to be high-energy, detail-oriented, proactive, and able to function under pressure in an independent environment along with a high degree of initiative and self-motivation to drive results. Strong communication skills -- both verbal and written and strong relationship, collaboration skills and organizational skills. Ability to quickly learn and implement new technologies, frameworks and tools and support multiple concurrent activities and to interface with external internal resources, working as a member of a matrix based diverse and geographically distributed project team.