Job Description
We are looking for an experienced Software Engineer with 10+ years of experience in designing, developing, testing, and maintaining scalable software applications. The ideal candidate should have strong programming skills, problem-solving abilities, and experience working with modern software development practices.
Key Responsibilities
- Design, develop, test, and maintain high-quality software applications.
- Write clean, efficient, reusable, and well-documented code.
- Develop and integrate REST APIs and microservices.
- Collaborate with cross-functional teams, including product managers, architects, QA, and DevOps engineers.
- Troubleshoot, debug, and resolve complex technical issues.
- Participate in code reviews and follow software development best practices.
- Implement CI/CD pipelines and support application deployment.
- Optimize application performance, scalability, and reliability.
- Participate in Agile/Scrum ceremonies and contribute to continuous improvement.
Required Skills
- 10+ years of experience in software development and engineering.
- Strong proficiency in at least one programming language, such as Java, Python, C#, or JavaScript.
- Experience with databases such as SQL Server, PostgreSQL, MySQL, or Oracle.
- Knowledge of REST APIs, microservices, and distributed systems.
- Experience with Git, CI/CD tools, and automated testing.
- Familiarity with cloud platforms such as AWS, Azure, or Google Cloud Platform.
- Strong analytical, communication, and problem-solving skills.
- Experience working in Agile development environments.
Preferred Qualifications
- Experience with Docker, Kubernetes, and cloud-native applications.
- Knowledge of system design, software architecture, and design patterns.
- Experience with automated testing frameworks and performance optimization.