Responsibilities:
Software Development:
- Design, develop, and maintain high-quality software solutions across the full stack (backend and frontend).
- Build scalable, secure, and efficient systems and services.
- Develop and integrate APIs, microservices, and third-party services.
- Write clean, maintainable, and testable code following best practices.
- Perform code reviews, ensuring adherence to coding standards and best practices.
Collaboration and Communication:
- Work closely with cross-functional teams (Product, UX/UI, QA) to deliver innovative and user-friendly software.
- Communicate effectively in English, both written and verbal, to ensure smooth collaboration with international teams and stakeholders.
- Participate in daily stand-ups, sprint planning, and retrospective meetings within an agile environment.
Problem-Solving and Innovation:
- Analyze complex problems and propose innovative, technical solutions.
- Continuously optimize and improve software performance, scalability, and security.
- Stay up-to-date with emerging technologies and industry trends, and implement them where appropriate.
Testing and Quality Assurance:
Write unit, integration, and end-to-end tests to ensure the quality of the software.
Help maintain a high level of quality by applying CI/CD pipelines and automated testing.
Mentoring and Documentation:
- Mentor junior developers and support their growth in the team.
- Contribute to technical documentation, ensuring code and system architecture are well-documented for internal and external teams.
Requirements:
- Bachelor’s degree in Computer Science, Software Engineering, or a related field (or equivalent practical experience).
Technical Skills:
- Proficiency in Programming Languages: Solid experience with at least one backend language (e.g., Java, Python, Node.js, C#) and frontend technologies (e.g., JavaScript, TypeScript, React, Angular, Vue).
- API Development & Integration: Strong experience with RESTful APIs, GraphQL, and microservices architecture.
- Cloud Platforms: Familiarity with cloud services such as AWS, Azure, or Google Cloud.
- Database Management: Experience with both SQL (e.g., PostgreSQL, MySQL) and NoSQL databases (e.g., MongoDB, Redis).
- Version Control: Proficiency in Git and version control workflows.
- Testing: Experience with testing frameworks (e.g., Jest, Mocha, or JUnit).
Communication Skills:
- Native or near-native proficiency in English, with excellent written and verbal communication skills.
- Ability to document and explain complex technical concepts to both technical and non-technical team members.
Soft Skills:
- Strong problem-solving abilities and attention to detail.
- Ability to work independently and as part of a collaborative, distributed team.
- Strong time management skills, with the ability to prioritize tasks and meet deadlines in a fast-paced environment.
Bonus Skills (Optional):
- Experience with DevOps tools (e.g., Docker, Kubernetes).
- Familiarity with CI/CD processes and tools (e.g., Jenkins, GitLab CI).
- Experience in Agile/Scrum development environments.
- Familiarity with microservices, event-driven architectures, and containerization.