Job Summary
Software Engineers develop and maintain new or improved software products, procedures, and techniques. Responsibilities include providing innovative and cost-effective engineering solutions to meet technical objectives and timing. With increasing experience and seniority, Software Engineers will supervise and mentor junior engineers, participate in activities to define and implement frameworks and design practices, as well as in knowledge-sharing activities.
Successful Software Engineers function well independently and in a team, are analytical thinkers, are creative and innovative, and have excellent communications skills.
This position reports to the Software Project Manager or Product Manager.
Essential Responsibilities and Duties
- Analyze, design, develop, and maintain products and assist in commercialization.
- Ensure product code and artifacts are managed according to guidelines.
- Assist in identifying and organizing requirements and producing specifications.
- Apply usability procedures and principles as defined.
- Build prototypes, products, and systems for testing.
- Design testing procedures. Document test results and develop client presentation.
- Develop and execute unit tests to ensure and maintain source code quality.
- Provide timely corrective actions on all assigned defects and issues.
- Create and maintain product documentation.
- Provide support for and prepare technical documentation.
- Share expertise throughout the organization.
- Continually evaluate engineering approaches and risks and make improvements.
- Assist in cost estimates.
Qualifications
- PhD, master’s, or bachelor’s degree in computer science or engineering.