Research and Development Engineer (Software Developer)
Penn State University
The Undersea Systems Office (USO) of the Applied Research Laboratory (ARL) at Penn State is seeking entry level to junior Software Engineers to develop real-time embedded software on autonomous systems. These systems operate without human intervention and range from small systems with a single embedded processor to complex systems with network-interconnected and distributed processing. You will be assigned to projects based on your experience and skill sets. Responsibilities include: Design and program real-time embedded software (primarily C/C++); debug and test software using unit, integration, and hardware-in-the-loop system tests; document algorithms, specifications, software, and defects; estimate software efforts and manage time well; communicate consistently with peers, management, and stakeholders; conform to requirements and standards for each project; proactively seek improvements for algorithms, software, and processes; proactively seek professional development opportunities; share knowledge with team members; and demonstrate and present to peers, management, sponsors, and stakeholders. This job will be filled as a level 1, level 2, or level 3, depending upon the successful candidate's competencies, education, and experience. Typically requires a Bachelor's degree or higher in an Engineering or Science discipline (Professional Engineer license accepted in lieu of Bachelor's degree), or an equivalent combination of education and experience for a level 1. Additional experience and/or education and competencies are required for higher level jobs. A Bachelor’s degree (Master’s degree preferred) in Computer Science, Software Engineering, or Computer Engineering is desired. Real-time and multi-threaded applications experience is preferred. Proficiency in related areas, such as networking, communication protocols, scripting, kernel/driver modifications, and Agile methods are also preferred. A broad background, which includes proficiency in C++, object-oriented design, Linux, and software testing is required. You must be comfortable working on all phases of the software life cycle, which includes system design, documentation, prototype construction, and field demonstration testing. You should possess the following attributes: The ability to communicate effectively, both oral and written; good interpersonal skills and a willingness to work within a team environment; strong self-management and time-management skills; and a desire to learn. Candidates selected will be subject to a government security investigation. You must be a U.S. citizen to apply. Employment with the Applied Research Laboratory will require successful completion of a pre-employment drug screen. These are one-year, fixed-term renewable appointments.
These salary bands have been established to provide salary guidelines for staff positions.