Skip to main content

Rochester, NY: Embedded Software Developer

Rochester, NY. Embedded Software Developer. Direct position.

Job Description

In this position, you will be involved in the design, development, testing, and team leadership for embedded applications.  

You will actively participate in a structured product development process which encompasses technical requirements development; software and architecture design, implementation and verification; production test strategy development; and launch to mass production. This position offers the opportunity to work in a team environment with individuals and groups located worldwide.

  • Participate in requirements engineering activities. Collaboration with internal customers to define and set expectations.
  • Assist in product design and architecture development
  • Accurately define and document the technical side of the project and identify risks
  • Design, develop, integrate and test software systems for security system products
  • Take responsibility for designated software tasks from design through development, integration & test
  • Take initiative to test code against known usage, investigate faults/boundary conditions, and automate unit tests
  • Facilitate and assist in the task estimation process
  • Work in a cross-functional team environment comprised of software engineers, testers, and product managers
  • Participate in technical project reviews and code reviews

Qualifications

You hold a Bachelor's Degree in Computer Engineering, Electrical Engineering, Computer Science, Software Engineering or a technology-related field; a Masters degree is preferred.

  • 0-5+ years demonstrated software experience for real-time embedded systems written in C / C++ using OOP principles
  • 0-3+ years of experience with software development for embedded microcontrollers including Linux/Android OS
  • 0-3+ years of experience in new product development and product launch process
  • Experience in design and implementation of low power, battery operated devices
  • Ability to understand hardware schematics and design/implement associated embedded software.
  • Experience in integrating hardware and software using data buses and protocols such as SPI, I2C, RS-232, DMA
  • Proficiency with commonly used electrical test equipment, such as oscilloscopes, signal generators, spectrum analyzers, network analyzers etc.
  • Excellent analytical skills, including analysis of existing software code and utilization of software tools.
  • Able to debug software and perform root cause analysis and clarify potential hardware related issues with the electronic hardware team.
  • Experience with unit and integration testing to include automation of test procedures
  • Work independently in an organized and structured fashion; takes ownership and is self-accountable to team goals
  • Good interpersonal skills within a cross functional team; proactive approach to communication and handling conflicts
  • Excellent written and verbal communication skills for both a technical and non-technical audience

Knowledge of security systems concepts and products is preferred. Experience with tools for requirements management, fault tracking, etc. also desired, along with knowledge of Low Power Wireless Network protocols and implementations. PC based Test Application development in C/C++/Java for interfacing and testing of embedded systems is a plus. Knowledge of quality management processes for the software development lifecycle is valuable, as well as knowledge of Agile development methods (Scrum, test-driven development, etc.).

To be successful in this position, you must have a high level of self-motivation, a drive for self-development and possess excellent communication and interpersonal skills.

Contact me staffing@softwarescout.com if you are interested!