A Senior / Staff Technical Developer with extensive experience in embedded runtime environments. The position involves determining embedded software strategies along with the development and implementation of a wide range of software. The ideal candidate should have recent hands-on development expertise with the major aspects of embedded Linux, Real-Time Operating Systems, and/or Hypervisors (embedded HW architectures, the kernel, build environments, etc.). The position involves a significant level of autonomy in which a self-motivated applicant will work independently to develop solutions. The candidate must also be comfortable working in a team environment and working directly with partners and customers. On occasion, travel may be required to meet with community organizations, partners, and customers.
• Design and implementation of the Customer specific software stacks (SMP/AMP)
• Lead and own architectural issues and initiatives. Come up with architectures, design documents, and other collateral needed to position solutions in the market.
• Lead technical teams to implement architectural visions.
• Work cross functionality across multiple groups, geographies and time zones.
• Work with customers directly to get issues localized and resolved
• Design and implement services built upon Mentor Graphics software products, open source components, and/or custom platforms
• Analyze project requirements, communicate with customers at the early engagement stage to fill in sales with a proper technical background as well as to provide necessary consulting
• Help project managers, lead project planning and tracking, requirements analysis, task analysis, work breakdown, and schedule estimation
• Create functional design specifications and other project documentation. Review internal and external product documentation and provide appropriate input to other parties involved in various projects
Applicant should possess at least a BE/B-Tech in ECE/EEC. Applicant must have at least 15years of combined ANSI C and assembly programming experience developing software for Linux, Real-Time Operating Systems and/or Hypervisors. Applicant must have significant experience in several of the following:
• Kernel and kernel module development
• Driver development (e.g. usb, block, character, wireless, network stack)
• Kernel debugging skills (e.g. kgdb, lttng, systemtap, jtag, etc.)
• Embedded/custom distribution development/management
• Cross-compiling & porting (e.g. make, autoconf)
• Fluent in at least one scriptinglanguage (Python, Perl, Bash)
• Experience in version control tools like GIT, CVS, Subversion
• Experience in build systems: Openembedded, Yocto (Poky), LinuxBuilder, RTOS build environments
• Knowledge of Linux userspace and/or RTOS processes
• Deep understanding of computer architecture – memory management, interrupt management, etc.
• General understanding of embedded hardware design and debugging
• Assembly and C programming
• Strong English written and verbal communication (both technical and non-technical)
• Ability to work effectively within a fast-paced multi-national engineering environment
• Balance working independently and coordinating with a distributed team in separate locations
• ARM and x86architecture knowledge
• Application development with standard frameworks (e.g. Gstreamer, VoIP, streaming H.264, Qt, cmake)
• Distributed systems and network protocoldevelopment
• Experience with boot-time optimization
• Experience in usage of debugging targets JTAG, DSTREAM
• Strong securityexperience and knowledge of securitymarket trends
• Strong IoT experience and knowledge of IoT market
• Customer facing experience
• Familiarity with open source community interaction practices
Req ID 5850