Android Developer with Automotive (Only W2) at Sovereign Technologies
New Holland, PA 17557
About the Job
Location: New Holland, PA
Best candidate will come from an embedded, product based company such as (automotive, aerospace, medical, consumer product etc). automotive preferred!!!!!!!
As the Android Developer you will develop a custom Android system and UI framework used on CNH Industrial displays. You will deliver key software enablers used on displays that control agriculture and construction machines. This is an excellent opportunity to get involved in a technology revolution currently taking place in this industry and work with smart people in a global, diversified company.
Responsibilities Includes:
- Develop custom Android system and UI framework used on CNH Industrial displays
- Deliver customized Android framework and UI widget library
- Plan and manage project deliverables
- Develop software architecture and drive the implementation of software enablers and end user features
- Act as a technical leader for the project
- Help define the requirements and evaluate technical feasibility of display software
- Participate in code reviews and act as a Subject Matter Expert
- Mentor and coach system software developers
- Support application teams that utilize CNH Industrial custom Android system and UI framework, document best practices and share the knowledge
- Drive system software performance and memory optimizations
- Work with 3rd party suppliers to incorporate their software modules into CNH Industrial displays
- Other duties as assigned
Required Qualifications
The Qualified Candidate will have:
B.S. in Computer Science, Computer Engineering, or Electrical Engineering
6+ years of software development experience
4+ years of Android application development experience
2+ years' experience with the following: building custom Android systems, Java and C/C++ programming and Linux kernel development and configuration
Able to travel up to 10% of domestically and internationally
The Preferred Candidate will have:
M.S. in Computer Science, Computer Engineering or Electrical Engineering
Knowledge of Internet related networking protocols: TCP/IP, Ethernet
Technical leadership experience
In-depth knowledge of Android framework and internal Android architecture
Automotive / Commercial Vehicle experience
Understanding of Automotive networking protocols such as J1939, CAN, LIN, XCP, UDS
Knowledge of performance profiling methods and tools in Linux and Android
Knowledge of memory management in Linux and Android
Project management/planning experience
Experience with V-Model and Agile Software Development Processes
Research, design, write, develop, test, and evaluate software programs that integrate with CNHi Displays.
- Collaborate and work with internal teams and cross functional teams to facilitate deployment related to software programs.
- Participate in Code reviews.
- Determine purpose, application, and feasibility of new or enhancement of existing software.
- Create and update documentation for designs, and all phases of the project.
- Analyze and root cause software issues found internally and externally.
- Drive application performance and memory improvements.
- Follow and help improve software development processes.
- Work within and be accountable to Agile development processes as a member of an interdisciplinary product development team.
- Provide or assist with training needs as it relates to new or existing software.
- Assist Technical Project Manager and Program Managers with estimates for software deliverables.
- Contribute innovative ideas to improve software on CNHi Displays.
- Travel is less than 10%.
Requirements:
- Bachelor's degree in Computer Engineering, Computer Science, Electrical Engineering, or similar field from an accredited university is required.
- Minimum 5 years of object-oriented software development/ design pattern experience.
- Minimum 3 years of software development experience using Java.
- Minimum 3 years of experience in software unit testing and integration testing using automated frameworks.
- Experience in APIs to connect Android Applications to back-end services.
- Experience with networking protocols such as J1939, CAN.
Other Preferred Requirements:
- Experience with software development fundamentals such as unit testing, build automation, branched based development, and modern documentation practices.
- Experience with software architectural design and refactoring.
Experience with Software Engineering tools such as DOORS, Polarion, JIRA, Git, Gerrit, Jenkins