The Software Engineer -II will be a part of the development team responsible designing, developing, and implementing solutions. You will leverage your deep technical expertise to design and implement new features and capabilities. Your expertise will be crucial in mentoring junior engineers and delivering scalable, reliable, and efficient solutions that meet the evolving needs of our customers.
Designing and developing Product:
Writing code, designing and prototyping, and integrating applications
- Develop product features and software solutions within existing applications and new initiatives.
- Assist with the generation and analysis of business and functional requirements for proposed software solutions.
- Participate in architectural and database design discussions as they relate to product direction.
- Create design specifications, documentation, and unit testing plans as defined by the Agile development process.
- Complete development tasks independently as well as under direction from the product architect and development leads.
- Develop features completely including the front-end components and the backend systems.
- Work closely with other engineers to develop the best technical design and approach for new product development.
Collaborating with others:
Collaborate with cross-functional partners (QA, Business Analyst, Tech Pubs, etc.) in an Agile/Scrum team environment.
Maintaining and improving software:
- Enhancing existing systems, resolving issues, and optimizing performance.
- Maintain and support software solutions post-production.
Documenting:
Contributing to documentation and educational content, and writing technical documentation
Staying current:
Keeping up with industry best practices and new features
Required WorkExperience:
- Extensive experience (5+ years) in software development, with a focus on .net development.
- Strong proficiency in C# .NET/ .NET Core programming language and platform.
- Strong proficiency with the ASP.NET framework and architectural/design patterns like Model-View-Controller (MVC)
- Experience of RPC and REST application programming interfaces (APIs)
- Extensive experience in frontend development using React, including advanced components, services, routing, and state management.
- Solid understanding of web development technologies such as HTML5, CSS3, JavaScript/TypeScript, and modern frontend build tools.
- Experience in GitHub/GitLab/any other source control tools
- Experience in Developing in microservices and Rest API
- Experience in working with RDBMS systems like SQL Server and PostgreSQL
- Experience in caching solutions like Redis and NoSQL database like MongoDb.
- Experience in CI/CD pipeline development using Jenkins/Other tools and deploying applications using it.
Preferred Work Experience:
- Experience with cloud platforms (e.g., AWS, Azure, Google Cloud) and infrastructure-as-code tools (e.g., Terraform, Ansible) is a plus.
Physical and Mental Requirements:
- Ability to multi-task, Analytical skills, Ability to follow verbal or written instructions, thinking analytically, Communication, using effective verbal communication, Using effective written communication, Handling stress & emotions, Concentrating on tasks, Making decisions, Adjusting to change, Examining/observing details, Sitting for long periods at a time
Skills:
- Strong attention to detail and accuracy
- Strong communication and presentation skills
- Experience working in a fast-paced, dynamic environment, with the ability to adapt to changing priorities and deadlines.