Job ID: 53260 Company: Cantel Medical (Italy) S.r.l. Location: Pomezia, Rome (Roma), Lazio, Italy Job Type: Full-Time FLSA Status: No FLSA Required Category: Engineering Industry: ""Posted Date: Position Summary The Senior Software Engineer is responsible for the development of embedded firmware, C, C++, & C# medical device applications, and Enterprise software with complex SQL database and web services for use in AER medical devices. This engineer will have the join a dedicated development department creating medical device software. Duties1. Designs, implements, and debugs applications according to corporate policies and business operating procedures on new and sustaining engineering projects.2. Leads the technical development for mid-size projects and implementation in C/C++ and other programming languages as needed.3. Collaborates on unusual/complex issues and approval on plans and larger-scale designs.4. Participates in design reviews to identify issues and provide design recommendations; participates in code reviews and/or inspections to identify issues and provide feedback.5. Collaborates with software team members to propagate good design principles and development practices across the team.6. Investigates new software technologies and tools.7. Creates software development process documentation to include architectural documents, requirements, object oriented designs, interface specifications, and verification documentation.8. Performs unit and integration testing to ensure software meets specifications and expectations.9. Reviews and resolves software change requests and defects.10. Work as a collaborative team member in engineering projects. Collaborates with groups outside of direct responsibilities including other engineering groups, Quality, Regulatory, Marketing, etc. for project planning, analysis of product requirements, and to outline proposed solutions. Education Degree Bachelor's Degree in Engineering General Required Experience Bachelor’s in computer engineering, Software Engineering, or Electrical Engineering (A degree in another Engineering discipline may be acceptable with proven software education and/or training and demonstrated software experience.)Requires 5+ years overall of related software engineering experience in development and/or verification.4+ years’ experience of software development in C++ is required. Experience in writing software requirements in collaboration with systems2+ years’ experience in Object Oriented design is required.2+ years’ experience with low level embedded hardware interfaces including CAN, I2 C, SPI, UART communication.2+ years’ experience with unit testing, debugging tools and code analysis. Experience with developing in a multithreaded environment on RTOS and embedded Linux platform. Experience with software design, model-based design and defensive coding practices. Working knowledge of communication and network standards TCP/IP, TLS is required. Exceptional team player and problem-solving abilities. Experience with YOCTO based BSP development is desirable. Experience in medical device industry is preferred. Experience using software integrated development environments (IDEs) and tools including compiling/building, debugging, configuration management (version control), defect management, continuous integration, and code analysis tools.