Related content
Why join Stryker?
Looking for a place that values your unique talents? Discover Stryker's award-winning culture.
We are proud to offer you our total rewards package which includes bonuses, healthcare, insurance benefits, retirement programs, wellness programs, as well as service and performance awards – not to mention various social and recreational activities, all of which are location specific.
Job description
Why join Stryker?
We are proud to be named one the World’s Best Workplaces and a Best Workplace for Diversity by Fortune Magazine! Learn more about our award-winning organization by visiting stryker.com
Our benefits include bonuses; commissions; healthcare; insurance benefits; retirement programs; stock based plans; paid time off plans; family and parenting leaves; tuition reimbursement; wellness programs; onsite fitness centers and cafeterias; discount purchase programs; and service and performance awards – not to mention various social and recreational activities.
Why engineering at Stryker?
At Stryker we are dedicated to improving lives, with a passion for researching and developing new medical device products. As an engineer at Stryker, you will be proud of the work that you will be doing, using cutting-edge technologies to make healthcare better. Here, you will work in a supportive culture with other incredibly talented and intelligent people, creating industry-leading medical technology products. You will also have growth opportunities as we have a culture that supports your personal and professional development.
Need another reason to apply? Check out these 8 reasons to join Stryker’s engineering team: https://www.strykercareersblog.com/post/8-reasons-to-join-strykers-engineering-team
As Software Staff Engineer, you will be responsible for a designing Linux based applications for embedded wireless and display devices used on Medical beds and Stretchers products.
What you will do:
Technical Responsibilities:
- Develop and implement Linux based application-firmware for embedded devices used on Medical beds and stretchers
- Fine-tune Linux subsystems for optimal performance of firmware applications.
- Work with the team to develop power management algorithms, and implement encryption algorithms, state machines, drivers server/cloud communication mechanisms.
- Integrate different subsystems from individual workgroups in the team.
- Work with customers and tech support to tune product performance and resolve customer issues.
- The position requires frequent and close collaboration with Kernel, Wireless, Audio, and Hardware engineers, third-party service providers, QA engineers, and technical support.
- Active contribution to the certification process including cryptographic (FIPS) /Wireless /Bluetooth certifications.
- Analyze and correct complex product design issues, using independent judgment.
- Independently balance design tradeoffs while designing a component of the system.
Med Device Compliance:
- Be proficient with and mentor others in usage of industry standards, including design requirements and test strategies per applicable regulations.
- Lead creation and refinement of engineering documentation, such as the Design History file.
- Follow and mentor others on R&D procedures like design controls and risk management, per the Quality Management System.
General Responsibilities:
- Work cooperatively with R&D, Quality, Manufacturing, Regulatory, Clinical, Marketing and Project Management to ensure project success.
- Identify and support the creation of or improvements to procedures, policies, processes, systems, and technology.
- Support and execute segments of complex product development to advance projects through the design /development/launch process.
- Contribute to product development from concept through release.
- Deliver high quality results with passion, energy and drive to meet business priorities.
- Build relationships and influence across the engineering groups within the business.
Technical Skills:
- Solid knowledge in C, Knowledge of Linux internals, IPC Mechanisms, multithreading, concurrency, Linux shell programming, and C++.
- Experience in Linux Network programming with strong knowledge on protocols like, TCP, UDP, RTC, SIP, XMPP, RTP, SRTP, HTTP, REST
- Experience in Configuring Linux scheduler, protocol stack development, Android AOSP framework, Python various IoT protocols, are added advantages.
- Experience with debugging timing and performance issues, and memory exceptions.
- Experience with host development environments on both Linux and Windows platforms.
- Experience in developing C/C++ UI applications for embedded devices.
- Strong software design and implementation skills with hands-on embedded systems development experience.
- Proactive, self-starter, able to work independently in a fast-paced environment.
- Well, organized with strong attention to detail; proactively ensures work is accurate.
- Resourceful and able to solve problems through practical use of technology and a solid understanding of product architecture.
- Ability to work within a geographically dispersed dynamic team to achieve desired results.
- Familiarity with Agile software development methodologies
- Excellent analytical, verbal, and written communication skills
- Familiarity with wireless technologies like WIFI, Bluetooth.
Preferred Skills:
- Working knowledge of wired interface protocols, including I2C, UART, RS-232, RS-485, CAN, SPI, LVDS, Ethernet, and DRAM interfaces ·
- Working knowledge of wireless interface protocols, such as Bluetooth, BLE, RFID, and Wi-Fi, including standards, requirements, and testing protocols
Minimum Qualifications (Required):
• Bachelor's degree in Software Engineering/ Computer Science or related discipline & 4+ years of work experience
Preferred Qualifications (Strongly desired):
Technical Skills:
• Knowledgeable programming skills. Design new components applying various concepts design concepts and patterns
Design and Development Skills:
• Knowledgeable with integrated development environments (IDE) for projects
• Knowledgeable with tools for static/dynamic analysis, memory management, code coverage and techniques for analyzing software
• Knowledge in integration and deployment processes
Software Process Skills:
• Software Development Life Cycle processes
• Knowledge in creating estimates for code implementation time/resource for assigned tasks and projects
• Knowledge from using Application Lifecycle Management /Traceability tools.
• Knowledge of regulatory and compliance standards applied to the SDLC (Software Development Life Cycle)