Job Description*
A Software Engineer is responsible for developing and delivering complex requirements to accomplish business goals. Key responsibilities of the role include ensuring that software is developed to meet functional, non-functional, and compliance requirements. This role codes solutions, unit tests, and ensures the solution can be integrated successfully into the overall application/system with clear, robust, and well-tested interfaces. They are familiar with development and testing practices of the bank. A Software Engineer is an individual contributor to a team.
Responsibilities*
- Contribute to story refinement/defining requirements.
- Participate and guide team in estimating work necessary to realize a story/requirement through the delivery lifecycle.
- Perform spike/proof of concept as necessary to mitigate risk or implement new ideas.
- Code solutions and unit test to deliver a requirement/story per the defined acceptance criteria and compliance requirements.
- Utilize multiple architectural components (across data, application, business) in design and development of client requirements.
- Assist team with resolving technical complexities involved in realizing story work.
- Contribute to existing test suites (integration, regression, performance), analyze test reports, identify any test issues/errors, and triage the underlying cause.
- Document and communicate required information for deployment, maintenance, support, and business functionality.
- Participate, contribute, and can coach team members in the delivery/release (CI-CD) events. e.g., branching timelines, pull requests, issue triage, merge/conflict resolution, release notes.
Requirements*
- Participate in requirements analysis to understand project needs and objectives.
- Collaborate with internal teams to product software design and architecture, ensuring alignment with project goals.
- Write clean, scalable code using .NET programming languages.
- Test and deploy applications and systems to ensure functionality and reliability.
- Revise, update, refactor, and debug code as necessary to maintain optimal performance.
- Improve existing software by implementing enhancements and updates based on user feedback and industry trends.
- Develop documentation throughout the software development life cycle (SDLC) to facilitate understanding and maintenance.
- Serve as an expert on applications and provide technical support to stakeholders needed.
Education*
- Graduation / Post Graduation
- Certifications If Any:
Experience Range*
Foundational Skills*
- Proven experience in .NET Development, with proficiency in .NET Core.
- Good expertise in Entity Framework, including Code First approach and EF Core.
- Strong Hands-on experience with C# and object-oriented programming (Oops) concepts, along with proficiency in design patterns.
- Expertise in MVC and Web API development.
- Hands-on experience with frontend technologies such as HTML, CSS, etc.
- Familiarity with architectural styles and APIs, particularly Web API and REST.
- Good understanding of Agile Methodologies, with experience working in Agile environments.
- ReactJS and VueJS will be added advantages.
Desired Skills*
- Good hands-on problem-solving ability and code quality.
- Basic knowledge on API testing tool. (Postman)
- Build tools (Visual Studio, SQL Server)
- Experience in any agile methodology.
Work Timings*
Job Location*