Sr. Engineer - Software will work as a senior member of a software development team, responsible for the development, implementation and post deployment support of enterprise applications. In this role, the Sr. Engineer - Software will work independently or with minimal input from the Development Manager. As a member of the team, the Sr. Engineer - Software will participate in all phases of the Software Development Life Cycle (SDLC). Sr. Engineer - Software will be responsible for mentoring junior members of the team and provide them guidance and support in completing their assignments.
Responsibilities / Tasks:
•Architect advanced to complex system solutions, solicit and incorporate inputs from technical and operational teams and document for consumption of development and testing teams.
•Develop complex software programs, with clear and succinct code documentation, that meet the written and oral functional requirements provided by customer.
•Fix defects in the home grown applications or third party software according to written and oral specifications.
•Perform database design and create scripts to create and modify database objects.
•Work on deliverables, such data analysis, client report requests, design documents, etc. with minimal to no guidance from Development Manager or senior developers. Assist junior members of the staff by providing direction on customer requests and performing code review to ensure quality outcomes.
•Actively participate and contribute in SDLC activities such as solution design, work effort estimation, assisting peers with technical challenges and code reviews.
•Lead a small team of developers - creates and assign work packages. Manage the work to its completion meeting the quality standards.
•Works very closely with operations team and acquire expert understanding of the business processes and develop unit and integration test scenarios in accordance with system requirements and business process changes. Provide expert advice to the testing team to create test data manually and/or systematically to test software programs.
•Perform production support activities such as monitor system processes, evaluate the outcome of system processes, work through system exceptions, and create processes to monitor and report on the overall system health.
•Work independently to understand the assigned work, deliver on agreed upon dates and raise issues/risks in a timely manner in case of risk to deliverables.
•Create/modify artifacts and deliverables expected from the SDLC and change management process such as project charter, proposed solution documents etc.
•Follow the SDLC and change management processes adopted by the organization. Participate in change management meetings to provide impact assessment of requested change, update the defect tracking system with most up to date information and perform release management tasks as assigned by Development manager.
Required Skills and Experience:
•Expert proficiency in Object Oriented (OO) Programming: Strong knowledge in OO programming languages, expert skill in Java is required.
•Expert understanding of complex concepts of data organization: Expert familiarity with RDBMS.
•Strong understanding of SDLC such as Waterfall, AGILE, SCRUM etc.
We are an equal employment opportunity employer and will consider all qualified applicants without regard to race, color, religion, sex, sexual orientation, age (40 and over), gender identity, national origin, protected veteran status, disability or any other protected classification under federal and state law.