Essential Functions
Technical Delivery (80%)
- Work with teams developing and updating enterprise applications.
- Work as a member of an agile software development team with full participation in all Agile team events and activities.
- Demonstrate ability to identify all technical steps required to complete a story.
- Demonstrate high-level business and domain knowledge and ability to understand and achieve business outcomes.
- Work in collaboration with other team members on an agile team to analyze user stories and perform task breakdown and complete committed tasks as per sprint schedule.
- Follow the standard application design and architecture to develop his / her features and work with senior team members to ensure non-functional metrics (e.g. scalability, performance) are met.
- Prepare work estimates for committed tasks and components with support from senior team members.
- Write unit test plans for committed components. Execute and confirm successful completion of unit tests as part of the criteria for completion.
- Participate in the testing and implementation of applications releases.
- Provide ongoing support for applications already in use. This includes problem diagnosis and resolution, ad hoc reporting support and database administration.
- Demonstrate ability to acquire new skills e.g., creating automation tests using selenium, creating UX designs, DevOps, performing functional / load testing etc. through internal / external trainings to be a T-Shaped team member helping the team in achieving sprint goals.
- Follow Bain development project process and standards in completing committed tasks and modules and contribute to the continual evolution of processes and standards. With guidance, write technical documentation as required.
Research (10%)
Contribute to the research and evaluation of new tools and technologies beyond current product requirements that are likely to be used in future initiatives. Help in the presentation of findings and recommendations to the full Software Development team.Contribute to evaluating and employing new and / or supplemental technologies necessary to deliver functionality for a given software application.Participate in internal skill development by sharing concepts and technologies with the full Software Development team.Communication (10%)
Ability to present the technical findings and recommendations to the Software Development team.Clearly communicates impediments to completing a story and ensures clear understanding of definition of done .Provide input during sprint retrospective to improve team experience.Knowledge, Skills, and Abilities
Frameworks : .NET & .NET CoreLanguages : C#, T-SQLWeb frameworks / Lib : Angular, JavaScript, HTML, CSS, Bootstrap, etc.RDBMS : Microsoft SQL ServerCloud : Microsoft Azure ServicesUnit testing : XUnit, Jasmine, etc.DevOps : GitActionsWeb frameworks / Lib : ReactSearch engine : Elasticsearch, Coveo, etc.NoSQL databases : MongoDB, Cosmos, etc.Caching : Redis, MemCachePreferred skills : Python & GEN AIDemonstrated knowledge of agile software development methodologies and processesDemonstrated record of strong performance in prior software development positions,Strong communication and customer service skillsStrong analytic and problem-solving skillsQualifications
Bachelor s or equivalent degree1-3 years of experienceExperience developing enterprise scale applicationsDemonstrated knowledge of agile software development methodologies and processes.Demonstrated record of strong performance in prior software development positions.Strong communication and customer service skillsStrong analytic and problem-solving skillsSkills Required
Customer Service, Nosql, Software Engineering, Artificial Intelligence, Agile Software Development, Mongodb, Python