Software Engineer – Python

Position Summary

Contribute to the software development effort by designing, programming, testing, debugging, optimizing, and documenting code. 

Primary Responsibilities
  1. Contribute to the development of the SoftVue software by updating existing functionalities and implementing new ones
  2. Test code in support of the verification and validation effort
  3. Write documentation
  4. Other duties as required 
Supervisory Responsibilities

N/A

Qualifications

To perform this job successfully, an individual must be able to perform each essential duty satisfactorily.  The requirements listed below are representative of the knowledge, skill, and/or ability required.  Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

Language Ability

Ability to read, analyze, and interpret general business periodicals, professional journals, technical procedures, or governmental regulations. Ability to write reports, business correspondence, and procedure manuals. Ability to effectively present information and respond to questions from groups of managers, clients, customers, and the general public.

Software Ability

Ability to implement complex equations in code.  Understanding of how to implement control strategies in code.  Ability to design software architectures for embedded microcontrollers running a priority, pre-emptive scheduler 

Reasoning Ability

Ability to apply principles of logical or scientific thinking to a wide range of intellectual and practical problems. Ability to deal with nonverbal symbolism (formula, scientific equations, graphs, etc.) in its most difficult phases. Ability to deal with a variety of abstract and concrete variables. 

Education/Certifications

B.S. in Computer Science, Math, Electrical Engineering, or Biomedical Engineering. (M.S. Preferred) 

Work Experience
  1. 3+ years of experience in Python software development
  2. Experience with C/C++ software development in Linux
  3. Experience using real time operating systems
  4. Experience using Structured or Object Oriented analysis and design methods
  5. Verification and validation experience
  6. Code documentation 
Computer Skills

To perform this job successfully, an individual should have experience in the use of MS Office (Word, Excel, and PowerPoint) 

Knowledge, Skills and other Abilities
  1. Python knowledge required
  2. Excellent knowledge of object-oriented programming
  3. C/C++ knowledge a plus
  4. Extensive experience with the Linux development environment
  5. Experience with multi-threading
  6. Experience with code profiling, debugging and optimization
  7. Meeting deadlines
  8. Good communication skills
  9. Ability to work independently as well as in a team
  10. Strong attention to detail 
Physical Demands

The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job.  Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

While performing the duties of this job, the employee is regularly required to sit, use hands, and talk or hear. The employee is frequently required to stand, walk, and reach with hands and arms. The employee is occasionally required to climb or balance, and stoop, kneel, crouch or crawl. The employee must occasionally lift and/or move up to 10 pounds. They also occasionally move objects weighing up to 20 lbs., and sometimes, but rarely, up to 50 lbs. Specific vision abilities required by this job include close vision, distance vision, peripheral vision, depth perception, and ability to see color. 

Work Environment

The work environment characteristics described here are representative of those an employee encounters while performing the essential functions of this job.  Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

While performing the duties of this job, the employee is occasionally exposed to work near moving mechanical parts. The employee is occasionally exposed to fumes or airborne particles, and risk of electrical shock.

The noise level in the work environment is usually mild to moderate.   

Travel

None

Apply