Mid Level Software Developer

Vidoori•Hyattsville, MD
•Hybrid

About The Position

We are seeking an analytical, collaborative, and quality-focused mid-level Software Developer to join the engineering team. The role is suited to someone with professional software development experience who enjoys building reliable, maintainable, and scalable applications. The developer will work closely with engineers, product managers, and other stakeholders to deliver software that meets user needs and supports business goals. The Software Developer will design, develop, test, and maintain software applications and services, contributing throughout the software development lifecycle—from understanding requirements and proposing solutions to implementation, code review, release, and ongoing improvement.

Requirements

  • Professional experience in software development, software engineering, or a related role.
  • Strong programming experience in at least one language, such as Java, C#, Python, JavaScript, or TypeScript.
  • Experience designing, implementing, and maintaining software features or applications.
  • Good understanding of software development principles, including object-oriented or functional programming, data structures, and common design patterns.
  • Experience writing and maintaining automated tests, such as unit or integration tests.
  • Experience using Git or another version control system and participating in pull requests or code reviews.
  • Familiarity with APIs, HTTP, JSON, and common approaches to integrating software systems.
  • Understanding of relational databases and SQL, or experience working with other data storage technologies.
  • Familiarity with Agile software development, including Scrum or Kanban, and experience working in a cross-functional team.
  • Awareness of CI/CD practices and tools used to build, test, and deploy software.
  • Strong analytical and problem-solving skills, with the ability to investigate issues and develop practical solutions.
  • Good written and verbal communication skills, with a collaborative and proactive approach to delivery.
  • Bachelor’s degree.

Nice To Haves

  • Experience with modern web frameworks, such as React, Angular, Vue, or equivalent technologies.
  • Experience building or maintaining backend services, REST APIs, or microservices.
  • Familiarity with cloud platforms such as AWS, Microsoft Azure, or Google Cloud Platform.
  • Experience using containers or orchestration tools such as Docker or Kubernetes.
  • Knowledge of application security, accessibility, performance, or software reliability practices.
  • Experience with monitoring, logging, and diagnosing issues in development or production environments.
  • Exposure to automated build and deployment tools, such as GitHub Actions, GitLab CI, Jenkins, or Azure DevOps.
  • Experience working with distributed systems, event-driven architectures, or messaging technologies.
  • Interest in mentoring colleagues, sharing technical knowledge, or contributing to engineering standards.

Responsibilities

  • Design, develop, test, and maintain reliable, scalable, and maintainable software in line with project requirements and engineering standards.
  • Translate user stories, product requirements, and technical designs into effective software solutions.
  • Write clean, reusable, and well-documented code, following established patterns and best practices.
  • Develop and maintain application features, APIs, services, or user interfaces as required by the team.
  • Create and maintain unit, integration, and other automated tests to support software quality.
  • Participate in code reviews, share constructive feedback, and apply feedback to improve code quality.
  • Work with product managers, designers, testers, and other engineers to clarify requirements and deliver features effectively.
  • Investigate software defects and production issues, identify root causes, and implement appropriate fixes.
  • Use version control and collaborative development workflows to manage changes and support team delivery.
  • Contribute to build, deployment, and CI/CD processes, helping to deliver software safely and consistently.
  • Consider performance, security, accessibility, and reliability when designing and implementing software.
  • Keep technical documentation up to date and communicate progress, risks, and decisions clearly.
  • Contribute to continuous improvement of development practices, tools, and engineering standards.

Benefits

  • Support for professional development, technical learning, and relevant certifications.
  • Exposure to modern programming languages, development tools, cloud technologies, and engineering practices.
  • Regular feedback, knowledge sharing, and opportunities to contribute to continuous improvement.
  • Collaborative working environment with close engagement across engineering, product, and delivery teams.
  • Inclusive workplace culture that values quality, curiosity, accountability, and continuous learning.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service