AYN

Mid Level Software Developer

Vidoori · Hyattsville, United States · hybrid

Position Summary

We are seeking a Software Developer to design, build, test, and maintain reliable software applications. In this role, you will work with product, design, and engineering colleagues to understand requirements, deliver high-quality features, and improve existing systems. The ideal candidate has practical software development experience, strong problem-solving skills, and the ability to contribute effectively within a collaborative development team.

Key Responsibilities

- Design, develop, test, and maintain software applications and services in line with project requirements and engineering standards

- Work with product managers, designers, and other stakeholders to clarify requirements and translate them into technical solutions

- Write clear, maintainable, and efficient code using appropriate programming languages, frameworks, and tools

- Contribute to the full software development lifecycle, including planning, implementation, testing, deployment, and ongoing support

- Build and maintain APIs, integrations, and software components that support application functionality

- Develop and maintain automated tests, and participate in code reviews to support software quality and consistency

- Investigate and resolve software defects, performance issues, and production incidents in collaboration with the team

- Identify opportunities to improve application performance, reliability, security, and maintainability

- Work with databases and data services to implement, maintain, and improve data access and storage solutions

- Use version control and team development practices to manage code changes and coordinate work effectively

- Contribute to technical documentation, implementation notes, and knowledge sharing within the team

- Participate in agile ceremonies, including planning, estimation, reviews, and retrospectives

- Work with quality assurance and operations colleagues to support releases, deployments, and application monitoring

- Keep up to date with relevant software development practices, technologies, and security standards

Required Qualifications

- Professional experience in software development or a related engineering role

- Proficiency in at least one modern programming language, such as Java, C#, Python, JavaScript, or TypeScript

- Experience building, testing, and maintaining software applications or services

- Understanding of software development principles, data structures, algorithms, and common design patterns

- Experience working with relational or non-relational databases and writing queries

- Familiarity with REST APIs, application integrations, and common data formats such as JSON

- Experience using version control systems, such as Git, in a collaborative development environment

- Understanding of automated testing practices and experience writing or maintaining unit or integration tests

- Strong analytical and problem-solving skills, with the ability to investigate issues and develop practical solutions

- Ability to communicate technical concepts clearly and collaborate with colleagues across different disciplines

- Good organisation and time management skills, with the ability to manage tasks and deliver work to agreed timelines

- Commitment to writing secure, reliable, and maintainable software

Preferred Qualifications

- Experience developing cloud-based applications or working with services from AWS, Microsoft Azure, or Google Cloud

- Familiarity with containerisation technologies such as Docker and orchestration platforms such as Kubernetes

- Experience with continuous integration and continuous delivery (CI/CD) pipelines and automated deployment practices

- Knowledge of front-end development technologies, such as HTML, CSS, and modern JavaScript frameworks

- Experience with message queues, event-driven systems, or microservices architecture

- Familiarity with application monitoring, logging, and performance analysis tools

- Experience working in an agile software development team

- Relevant degree, professional qualification, or equivalent practical experience in software development

Apply on the employer’s site