Cummins Inc. Electronic Software Engineer in Pune, India
Electronic Software Engineer
This applied technology position creates software that is sold as an integral part of Cummins’ products. People in these positions will have involvement in specification, design, implementation, testing and/or release of software that controls the operation of Cummins’ products in a variety of customer applications.
Investigates embedded software problems, understands causal mechanisms, recommends appropriate action, owns problem resolution and documents results with guidance from more experienced team members.
Applies and supports the improvement of embedded software development processes and tools. Processes include model based development, coding, compiling and test. Tools include Simulink, code editors, integration tools, static analysis tools, compilers and hardware in the loop test tools.
Obtains input and negotiates with product and software development teams and delivers verified software features, components, and builds to product teams.
Makes decisions in the areas of software requirements, design, implementation and test that impact the quality and performance of individual software features and/or components.
Owns problem resolution for moderately complex components, products, systems, subsystems or services with a greater degree of technical complexity and ambiguity over the entry level engineer level and with greater accountability to the project team.
Provides independent execution of established work processes and systems, while still developing technology or product knowledge; engages with the improvement of systems and processes.
Involves minimal direct management of people, but could involve the coordination and direction of work amongst technicians and/or temporary student employees.
Contributes effectively toward team goals, exhibits influence within a work group and continues to develop proficiency in the competency areas critical to success in the role.
Embedded Software Design and Construction - Constructs embedded software using industry best practices and robust software engineering principles; verifies software updates to ensure quality products.
Product Verification and Validation Management - Develops product systems validation plans from a variety of inputs to identify failure modes, while managing product risk and relative priority; negotiates product requirements against capability to guide project scope; evaluates analytical, simulation and physical test results to verify product capability and validate requirements; assesses legacy versus proposed system solution capabilities and produces recommendations with technical documentation to support product decisions.
System Requirements Engineering - Uses appropriate methods and tools to translate stakeholder needs into verifiable requirements to which designs are developed; establishes acceptance criteria for the system of interest through analysis, allocation and negotiation; tracks the status of requirements throughout the system lifecycle; assesses the impact of changes to system requirements on project scope, schedule, and resources; creates and maintains information linkages to related artifacts.
Product Platform Planning and Architecting - Creates and develops a holistic product platform including key architectural feature and function variants needed to align with market level product plans of future target markets; generates alternative architectures traceable to the requirements and performs trade-off analysis in collaboration with life-cycle stakeholders to ensure a balanced and optimum platform; communicates and maintains traceable information and plans executed by product development teams.
Product Failure Mode Avoidance - Mitigates potential product failure modes, by identifying interfaces, functions, functional requirements, interactions, control factors, noise factors, and prioritized potential failure modes and potential failure causes for the system of interest to effectively and efficiently improve the reliability of Cummins’ products.
Systems Thinking - Defines the system of interest by drawing the boundaries, identifying its context within its environment, its interfaces, and that it has a lifecycle to aid in planning the problem statement, scope and deliverables ; analyzes linkages and interactions between elements that comprise the system of interest by using appropriate methods, models and integration of outcomes to understand the system, predict its behavior and devise modifications to it in order to produce the desired effects.
Decision quality - Making good and timely decisions that keep the organization moving forward.
Drives results - Consistently achieving results, even under tough circumstances.
Collaborates - Building partnerships and working collaboratively with others to meet shared objectives.
Communicates effectively - Developing and delivering multi-mode communications that convey a clear understanding of the unique needs of different audiences.
Self-development - Actively seeking new ways to grow and be challenged using both formal and informal development channels.
Education, Licenses, Certifications
College, university, or equivalent Bachelor's degree in Engineering or other relevant technical disciplines is required. Post-graduate (Master's) degree relevant to this discipline area may be required for select roles.
This position may require licensing for compliance with export controls or sanctions regulations.
Prior entry level engineering equivalent work experience in a relevant discipline area is required. Knowledge of MS Office tools is preferred
The candidate must have at least have 3 years of experience in development of applications and configuration of Linux BSP. Apart from good knowledge and experience in embedded C programming, we are looking for the following:
Proficient with Linux Shell Scripting
Proficient in application development and maintenance on embedded Linux platforms
Proficient with Optimizing Embedded Linux booting process
Proficient in Board bring up activity, Writing test cases and scripts for testing software on Linux platform
Experience in Linux Kernel and Device Tree customization for various hardware platforms
Extensive knowledge of Linux filesystems
Experience with bootloaders like U-boot and Barebox
Experience with build systems like Yocto and Buildroot
Experience in integrating device drivers for different peripherals
Experience in using TFTP, NFS, FTP
Understanding of Yocto Recipes, layers
Worked extensively on Linux based Desktop systems
Worked with various cross toolchains
Knowledge of Systemd, Sysfs, Multicore communications, Git version control is added advantage
Knowledge of Linux Device Driver development is added advantage
Knowledge of Makefiles, IPC mechanisms in Linux is added advantage
The main responsibilities include development & testing of applications and configuration of Linux BSP on custom board.
Primary Location India-Maharashtra-Pune-India, Pune, Cummins Technical Center India
Job Type Experienced - Exempt / Office
Recruitment Job Type Exempt - Experienced
Job Posting Mar 3, 2022, 12:45:49 AM
Unposting Date Ongoing
Organization Cummins Electronics and Fuel Systems
Req ID: 2200019A