Senior Software Engineer
Tuscaloosa, AL 3
Senior Software Engineer
Rapidly growing high-tech developer of products for government contracts located in the Mid South is looking to expand its development organization with the addition of a Senior Software Engineer.
The software engineer will lead software development activities and technical tasks throughout the software development lifecycle, research new technologies, provide guidance on the engineering effort to ensure adherence to best practices, and help mentor junior staff.
The senior software engineer will lead or support various tasks and activities within a project and will organize, schedule, and task team activities in overall coordination with Software Management. This may include analyzing and specifying operational and network environments, internal and external system interfaces, and data schema, and deriving functional, performance, and other requirements.
Additionally, the senior software engineer may perform evaluations of software applications, protocols and interfaces to support integration of new capabilities into an application. The senior software engineer will also work to develop and/or integrate software components for application development, and conduct unit testing to ensure all unit-level requirements are satisfied.
The senior software engineer may also be responsible for ensuring the software product for distribution is packaged and that all quality assurance steps are followed prior to delivery of the product to the customer. This may include overseeing or executing all levels of testing and validation events as well as oversight of the test and build process to ensure that developed/integrated software components function and interoperate as required within and between systems.
Finally, the senior software engineer may be responsible for ensuring technical documentation of the software/system is comprehensive and fully reflects the product. Travel may be required in support of these activities.
Flexibility, a strong teamwork approach, and the desire to work in a fast-paced environment with existing and new product lines are necessary for success. A willingness to learn new technologies is required. The position will report to the Software Engineering Manager and work closely with Program Management and Engineering teams. The company offers a competitive salary, fun work environment, fringe benefits, and an equity opportunity.
- United States Citizenship.
- 4 year BS degree in Engineering. CS, EE, or CE are preferred.
- 5-7+ years of experience developing embedded systems and board bringup.
- Proficient in programming: C/C++ in a Linux and non-OS embedded environment.
- Familiarity with Linux and debugging in Linux environment.
- Knowledge and experience in object oriented programming preferably in JAVA/Android.
- Ability to lead a team of junior engineers including planning, reviewing, and mentoring their work output.
- Ability to present status and technical progress and results to both internal management and external customers.
- Ability to design, document, develop, and debug software functionality including new and existing applications.
- Outstanding individual initiative and attention to detail; extremely driven and able to successfully set priorities, drive decisions and get closure on recommendations and issues.
Culture and Core Value Traits:
- Ability to work as part of a team while maintaining independent thinking.
- Highly results driven and self-starter in addition to excellent communication skills.
- Good at thinking outside the box and have an aptitude for innovation.
Compensation commensurate with experience.