Software Engineer III (C/C++, Python)
St Louis, MO 63044 US
Software Engineer III
Location: St. Louis, MO
Duration: 6 months contract to hire
Clearance: ability to obtain Secret clearance
Work schedule: hybrid
Softworld client is seeking a Software Engineer Level III. This position provides technical and analytical work to develop, design, and/or support software solutions across multiple U.S. defense industries. Duties include participating in software design activities, developing code based on the architecture and technical design, creating, and performing unit tests, enhancing the software development process, and playing an active role in test case planning for components and functions developed by the project team. The selected candidate will work with other engineering disciplines and use their software development expertise to create robust technical solutions across multiple technology areas.
· Ability to complete a technical project independently and manage other engineers. Review customer specifications and requirements and develop designs to best support them.
· Develop, document and support testing of products, systems, or subsystems.
· Provide budget, cost, and schedule input for design assignments.
· Document component and subsystem specifications
· Specify and evaluate supplier subsystems and services.
· Applies fundamental knowledge of software engineering principles and core concepts (e.g., data structures, algorithms, computer architecture, operating systems, and databases) to create software solutions that meet project-based needs.
· Applies core computer science concepts in the development, testing, and documentation of software units.
· Participates as a member of the testing team to plan and review test cases within software solution components.
· Participates in code reviews with the systems engineers, software architects, and other technical staff.
· Collaborate with internal and external customers to develop systems to meet required business specifications.
· Degree in Computer Science, Computer Engineering, or related field.
· Proven Computer Science fundamentals in algorithm design, problem solving, and complexity analysis.
· 5+ years of industry experience in delivering high-quality, innovative applications and programming experience in one or more of the following: C, C++, Python, embedded systems, C# .
· Practical experience working with embedded hardware.
· Experience in Object Oriented design and development.
· Ability to write detailed design documents incorporating UML techniques.
· Experience following formal software development processes.
· Excellent verbal and written communication skills.
· Detail-oriented, organized, and able to work well in a team environment as well as independently with little day-to-day guidance.
· Demonstrates an ambition to learn.
· Experience with Linux/Unix and/or Windows.
· Experience with software version control systems (preferably GIT).
· Willing to travel up to 10% as necessary.