TalTeam-posted 3 months ago
Full-time • Mid Level
Reston, VA
Professional, Scientific, and Technical Services

The Software Engineer position involves performing complex analysis, design, development, testing, and debugging of computer software. This includes tasks ranging from operating system architecture integration and software design to the selection of computer systems, languages, and equipment. The role requires designing, developing, coding, testing, and documenting critical and complex application programs for computer systems. The engineer will work with stakeholders to define system scope and objectives, establish baselines, and create highly complex systems.

  • Perform technical detail design, coding, testing of applications.
  • Serve as subject matter expert for customer and internal discussions related to maintaining and enhancing existing software systems.
  • Develop and/or analyze interface design documentation.
  • Comply with hardware and software systems standards and procedures.
  • Deliver large systems for tens of thousands of users.
  • Comply with code quality, migration and dev/ops standards and policies.
  • Perform software analysis, including requirements and use case development and design.
  • Implement and document source code to design specifications.
  • Perform software testing including developing and running automated unit tests.
  • Draft and execute structured automated test cases.
  • Compile, assess, and report data results from software testing and analysis.
  • Develop software solutions for enterprise environments and other technologies.
  • Analyze and implement functional and non-functional requirements.
  • Perform operations & maintenance (O&M) of existing systems.
  • Identify areas for improvement and streamlining.
  • Provide direct technical support for high level, high visibility and critical trouble calls for supported applications.
  • Work with cross functional teams to develop highly reliable software that runs at scale.
  • Provide recommendations to infuse new technology.
  • Extend open-source libraries and systems as necessary.
  • Play a crucial role in product scoping and roadmap/architecture discussions.
  • Evaluate emerging technologies to identify opportunities, trends, and best practices.
  • Mentor junior software engineers.
  • Bachelor's Degree in Information Technology or Computer Science.
  • 5 years experience with software development, basic coding and compilation, software architecture/design, user requirements definition and software specification development.
  • In lieu of a Bachelor's degree, an additional 4 years of relevant work experience is required.
  • Ability to communicate technical requirements to all levels of expertise.
  • Proficient in establishing and maintaining good working relationships.
  • Knowledge and understanding of software development life cycle (SDLC).
  • Proficient with integrating complex and/or existing systems.
  • Knowledge of programming languages (e.g. JavaScript, C, Python, etc.).
  • Excellent communication skills both written and verbal.
  • Knowledge of cloud technologies (e.g. AWS, Azure).
  • Knowledge of database technologies (e.g. cloud, SQL, Oracle, Mongo DB, PostgreSQL, etc.).
  • Fundamental knowledge of software engineers' best practices, agile methodologies, CI/CD pipelines.
  • Knowledge of test-first practices including Test-Driven Development (TDD) and Behavior-Driven Development (BDD).
  • Strong experience with Deployment/Continuous Integration/ Continuous Testing/ Continuous Delivery processes and tools.
  • Knowledge of Code quality and promotion practices.
  • Experience with Gen AI, Lambda and/or Claude Testing including Chatbots.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service