Descripción
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



