Search
Header navigation

Principal, Software Development

location3351 Michelson Dr, Irvine, CA 92612, USA
PublishedPublished: Published 1 week ago
Full time

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 company a year, 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 GCP.

    • 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 relevant technical experience, with at least 3 + years building Front End Solutions in eCommerce, or Master’s degree plus 4+ years of relevant experience

  • Deep hands-on experience with Front-end technologies JSON, HTML, CSS and CSS pre-processing frameworks (Sass, Less or Stylus), JavaScript, JavaScript libraries (Jquery) or Web Components and other industry standard frameworks

  • Hands-on experience in developing frontend solutions using languages: C#, Java, Python, Ruby, Perl or Node.js

  • High proficiency in React, JQuery, Angular 2 JS, Boostrap, and Knockout JS

  • Deep, hands-on experience with .NET Web development experience with C# /.NET4.x / MVC.

  • Strong background in MS SQL Server, SQL Databases, and writing SQL stored procedures

  • In-depth understanding of the entire web development process (design, development and deployment)

  • Understanding of layout aesthetics

  • Extensive experience with front end frameworks such as ASP.Net MVC, React, Angular, Vue, or Ember

  • Good understanding of asynchronous request handling (AJAX)

  • Experience with RESTful APIs and MicroServices

  • Experience with unit testing libraries such as Mocha, Jest, Chai, Enzyme

  • Experience with code versioning tools (TFS, git) and process.

  • Preferred to have knowledge on GCP(Google Cloud Platform) or any other cloud platform.

  • Knowledge of SEO principles

  • Strong interpersonal skills

  • Strong ability to collaborate and work across teams and disciplines

  • Strong software design and test methodology knowledge and abilities

  • Ability to communicate clearly and concisely, both verbally and in written forms

  • Ability to understand and analyze complex problems and break them into small solvable pieces

  • Ability to learn new tools, frameworks, technologies and platforms required experience

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

Required skills

  • ASP.NET
  • Operating Systems
  • Integration
  • Unit Testing
  • Time Management
  • Object-Oriented Design
  • Python
  • Scrum
  • Software Development
  • Cloud Architecture
  • Software Engineering
  • Implementation
  • Angular
  • JavaScript
  • Test Automation
  • Automation
  • C#
  • CAN
  • DevOps
  • Technical Solutions
  • Communication Skills
  • Documentation
  • User Stories
  • Node.js
  • GCP
  • Git
  • Java
  • Jest
  • JSON
  • React
  • Sass
  • Splunk
  • SQL
  • Vue
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...