Job Description
Ingram Micro is seeking experienced software engineers who can leverage their skill-set to grow as part of an Agile SCRUM team. They must be a quick learner and love challenging themselves to constantly raise the bar. This opportunity requires strong problem-solving skills, an aptitude for team collaboration and open communication as they deliver efficient, well designed, and tested software for a positive user experience. Innovative thinking and well-designed products with an emphasis on performance are a necessity to give our customers the best experience possible.
Key Job Functions/Requirements
• Hands-on experience with the construction of complex engineering solutions and knowledge of software development methodologies
• Assumes end-to-end ownership of solutions as part of the Agile SCRUM team, which includes assisting in the development of testing automation and other key quality aspects
• Partner with product owners and other Agile SCRUM team members to determine new features and user stories
• Participate in code reviews to ensure that each increment adheres to the original vision as described in the user story and all standard resource libraries and architecture patterns as appropriate
• Assist in establishing and supporting coding standards
• Engage in all Agile ceremonies including planning, grooming, product demonstrations, and team retrospectives
• Exhibits DevOps mindset where Agile SCRUM team is accountable for a product from inception to sunset
• Respond to support incidents for production applications in order to make a quick repair to prevent application outages
• Create and/or update the documentation to support development efforts. Documentation may include detailed specifications, implementation guides, architecture diagrams, and/or design documents
• Share knowledge among members in the Agile SCRUM team
• Demonstrate excellent communication skills and effective collaboration in a team-oriented environment
• Aptitude for learning new technologies and concepts
• Excellent time management skills and ability to prioritize
• Able to translate customer and business needs to technical solutions
• Resilient to change
• Establish User Personas in collaboration with Product Management
• Comfortable working with little to no supervision and providing supervision to associate engineers
• Mentor and train other Software Engineers
• May be asked to participate in Quarterly Architecture Summits
• Take the lead on challenging software engineering projects
• Be a resource for multiple challenging software engineering projects at a time
• Coordinate with external teams/stakeholders
• Maintain a holistic view of the project, never losing sight of the smaller details
• Proficient in the following:
• Unit testing as well as coding in 1-2 languages (e.g. Java, C#, etc.)
• Object-Oriented Design (OOD) and analysis
• Application of design patterns
• Application of non-functional software qualities such as resilience, maintainability, etc.
• Applying behavior-driven testing techniques
Specialized Knowledge & Skills
• Proficient in C# .NET,
• Proficient in Web Forms, MVC and Web API
• Proficient in .NET Core and Microservices
• Experience with LINQ, Generics, Lambda expressions, extension methods, attributes
• Experience with ORM Frameworks (Entity Framework, NHibernate)
• Experience with IoC containers e.g. Autofac, Unity, MEF, Ninject
• Experience with Web Services and serialization, XML, JSON, SOAP, WCF, REST
• Experience with Unit testing using mock objects
• Experience with design patterns and object-oriented programing
• Experience with SQL Server and the SQL language
• Skilled in CSS, HTML, ECMAScript or TypeScript, and related technologies
• Experience with TypeScript-based open-source front-end web application platform (i.e. Angular JS 2, React, Redux, Ember)
• Experience with JavaScript, jQuery, Bootstrap
• Experience with Test Automation
• Experience with Leading engineering teams
• Experience with HTML5 and CSS3
• Experience with Memory management, performance tuning and profiling
• Experience with Agile Management Tools (i.e. Confluence, JIRA, VersionOne)
• Experience with Queueing
• Experience with threading, async patterns and TPL/TAP plus .NET thread safe collections
• Experience with SCM including branching and merging
• Experience with RDBMS
• Experience with and implementing enterprise level software applications
• Experience with JavaScript Unit Testing frameworks (Protractor, Jasmine or QUnit)
• Familiar with basic networking and infrastructure
• Knowledge of Stream Processors (i.e. Kafka
💡 Quick Summary
Seeking a career-building opportunity? The Sr| Engineer| Software Development position is now open for candidates interested in the Software Developer Jobs sector. This role in Chennai offers a professional environment and growth potential.
Requirement Snapshot: Candidates should possess basic communication skills, a proactive attitude, and the ability to work in a team. Experience in Software Developer Jobs is a plus.
