




Summary: Ingram Micro is seeking experienced, innovative software engineers for an Agile SCRUM team focused on developing, modifying, and updating complex systems to empower customer businesses. Highlights: 1. Leverage skill-set to grow as part of an Agile SCRUM team 2. Design, develop, test, debug, and implement operating systems components 3. Assume end-to-end ownership of solutions within an Agile SCRUM team **It's fun to work in a company where people truly BELIEVE in what they're doing!** Job Description: **Position Summary:** Our challenge is to use modern tools, techniques, and methods to develop, modify, and/or update complex and extremely powerful systems. Our customers and partners need applications that enable them to easily operate and expand their businesses. Ingram Micro is a $50B revenue a year company, with $5B of that revenue going through our team's eCommerce web site. 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. **Your Role:** * Designs, develops, tests, debugs and implements operating systems components, software tools, and utilities. * Determines systems software design requirements. Ensures that system improvements are successfully implemented and monitored to increase efficiency. * Generates systems software engineering policies, standards, and procedures. * Manages large projects or processes. * Limited oversight from manager. * Coaches, reviews, and delegates work to lower\-level professionals. * 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 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. * Attitude 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 Java , Python knowledge is good to have. + Good understanding of Cloud Architecture and hands on experience working with Azure. + Experience working with log management tool and APM tools like splunk, data dog 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 **What you bring to the role:** * Bachelor’s degree in computer science or relevant science and math discipline with an IT emphasis is required. * 10\-15 years of technical experience, with at least 5\+ years of experience with web services development as Full stack/integration developer or master’s degree plus 7\-9 years of technical experience. * Strong background on java 8 and beyond. * Must have experience developing Rest API’s using spring boot framework. * Good knowledge of JPA, hibernate, JDBC. * Must be able to write Junit test cases. * Must has experience using MAVEN, SonarQube * Must have experience working with relational database. * Experience with Agile Management Tools (i.e., Confluence, JIRA, VersionOne) * Experience with version control management and processes (i.e., Bitbucket, Git, Gitflow, SVN) * Experience with Web Services and Serialization (i.e. XML, JSON, SOAP, REST) * Familiar with Bootstrap and/or Material\-UI design **Additional Knowledge \& Skills** * Good understanding of specifics of markup for modern browsers. * Familiarity Python is a plus * Experience with test automation for Front\-End (unit and integration test suites) * Experience building system in GCP * Experience with NodeJS


