The main function of a Software Engineer is to design, develop, implement, test, and maintain business and computer applications software or specialized utility programs including mainframe and client/server applications, and major enhancement of existing systems
Job Responsibilities • Fine-tune and improve a variety of sophisticated software implementation projects • Gather and analyze system requirements, document specifications, and develop software solutions to meet client needs and data • Analyze and review enhancement requests and specifications • Implement system software and customize to client requirements • Prepare the detailed software specifications and test plans • Code new programs to client’s specifications and create test data for testing • Modify existing programs to new standards and conduct unit testing of developed programs • Create migration packages for system testing, user testing, and implementation • Provide quality assurance reviews • Perform post-implementation validation of software and resolve any bugs found during testing
Qualifications: • Bachelor's degree in a technical field such as computer science, computer engineering or related field required • 10+ years experience required • A solid foundation in computer science, with strong competencies in data structures, algorithms, and software design • large systems software design and development experience • Experience performing in-depth troubleshooting and unit testing with both new and legacy production systems • experience in programming and experience with problem diagnosis and resolution
Minimum Qualifications • 7+ years of software quality assurance • Experience in using Azure cloud (Application Insights, Swagger) to execute backend tests and troubleshoot issues. • Strong CS fundamentals, including OO concepts, data structures, algorithms, and distributed systems • Strong communication skill to work with PM and dev to understand the feature, design and impact of the changes across different data processing pipelines • Ability to optimize and efficiently use the tools (such as IDE, debugger, build tools, source control, profilers, Postman) to assist with day-to-day tasks • Fluency with backend automation frameworks in Java, Cucumber, Rest-assured • Proven ability to drive cross-team technical discussions and decision making with a solid understanding of SDLC concepts • BS in Computer Science/Engineering or equivalent experience