SOFTWARE ENGINEER II
Apply NowCompany: Platform Aerospace
Location: Hollywood, MD 20636
Description:
JOB TITLE: SOFTWARE ENGINEER II
DEPARTMENT: SOFTWARE ENGINEERING
REPORTS TO: SOFTWARE ENGINEERING SUPERVISOR
CLASSIFICATION: EXEMPT
Job Summary:
As a software Engineer, you will be working on software, firmware development for onboard flight computers. You will be familiar with a wide range of mission systems, software programming languages and environments. You will team with Systems and Software engineering professionals in executing all aspects of software development, from requirements, design, testing-implementation, and mission integration.
Duties/Responsibilities:
BASIC REQUIREMENTS
PREFERRED REQUIREMENTS
DEPARTMENT: SOFTWARE ENGINEERING
REPORTS TO: SOFTWARE ENGINEERING SUPERVISOR
CLASSIFICATION: EXEMPT
Job Summary:
As a software Engineer, you will be working on software, firmware development for onboard flight computers. You will be familiar with a wide range of mission systems, software programming languages and environments. You will team with Systems and Software engineering professionals in executing all aspects of software development, from requirements, design, testing-implementation, and mission integration.
Duties/Responsibilities:
- Develop software/firmware for payloads, hands on algorithm implementation on actual hardware
- Conduct bench and airplane testing during development and software releases
- Assists the engineering department with analysis, tests, software development, integration, and quality assurance of systems
- Perform proper work documentation, test plans, and results
- Develop, execute, and analyze software configuration for onboard flight systems (both microprocessor and Linux based).
- Execute all aspects of software development, from requirements, design, testing-implementation, and mission integration.
- Write high-quality, structured software for general applications and microcontroller-based for embedded processors.
- Maintain existing code bases and develop, re-architect, and integrate new software.
- Develop, maintain communication, and optimize between various software systems and perform continuous improvement.
- Perform other duties as are necessary and/or required.
BASIC REQUIREMENTS
- Bachelor's degree in Computer Science, Electrical or other field with strong software development background and 2-5 years of professional experience in software development for system level integration and testing or a Master's degree in related field and 0-2 years of relevant experience
- Ability to obtain and maintain a Security Clearance
- Experience with writing communication software for protocols such as SPI, I2C, CAN, USB and GPIB
- Programming experience with C++, C and C#
- Some experience with embedded systems and understanding of real time operating systems
- Prior experience authoring and reviewing software
- Ability to work with large code bases
- Creative, passionate problem solver that can thrive in multidisciplinary teams through fast paced, autonomy drive, and demanding design and integration cycles
- Self-drive with strong documentation, organizational and communication skills
PREFERRED REQUIREMENTS
- Master's degree in computer science, Electrical or relevant fields
- Programming experience with Python
- Knowledge of control systems and implementing controllers for flight systems
- Familiarity with existing flight code bases
- Experience with languages for embedded systems or Linux
- Familiarity with software version control system e.g., GitHub
- Experience with writing flow charts, test plans
- Strong skills in debugging, performance optimization and unit testing
- Ability to work in a fast paced, autonomously drive, demanding and dynamic environment with changing needs and requirements