Posted 3 days ago

Senior Software Developer (Backend)

Part time
Dubai, AE
Junior
Salary Range: To be discussed
Full Job Description
Summary
Backend development, database management, API design, cloud deployment, security compliance, collaboration, and technical leadership.
Description

Roles and Responsibilities:

System Architecture and Design:
Develop and maintain backend architecture: Design scalable, high-performance systems and APIs that can support multiple web and mobile applications.
Microservices and distributed systems: Implement microservices architecture and ensure efficient communication between services.
Data modeling: Design and maintain databases (relational and nonrelational) ensuring optimal performance, scalability, and data integrity.

Backend Development:
Code development: Write clean, maintainable, and efficient code in backend technologies such as Node.js, Python, etc. or any other relevant languages.
API development & integration: Develop RESTful and GraphQL APIs, ensuring proper documentation and versioning.
Optimize performance: Continuously work on optimizing backend performance for web and mobile applications to reduce latency and increase response time.
Handle concurrency & scalability: Develop solutions that can handle high traffic and ensure the system scales effectively.

Collaboration and Communication:
Cross-functional collaboration: Work closely with frontend developers, mobile developers, product managers, and UX/UI designers to ensure seamless integration and smooth product development.
Mentor junior developers: Provide technical leadership, code reviews, and mentorship to junior developers, helping them grow their skills.
Stakeholder communication: Clearly communicate progress, risks, and challenges to management and other stakeholders in the product development process.

Database Management:
Database design & optimization: Design and optimize complex SQL or NoSQL databases (e.g., MySQL, PostgreSQL, MongoDB, MariaDB, etc.) and ensure they are reliable and performant.
Data security: Implement strong security protocols for data storage and transmission, ensuring compliance with best practices and regulations (e.g., GDPR, PCI DSS).

DevOps and Deployment:
Continuous integration & deployment (CI/CD): Set up and maintain CI/CD pipelines for automated testing and deployment of backend services.
Cloud infrastructure management: Deploy and manage cloud-based systems (e.g., AWS, Azure, Google Cloud) and infrastructure-as-code (e.g., Terraform, CloudFormation).
Monitoring & logging: Implement logging, monitoring, and alerting tools (e.g., Prometheus, ELK Stack, etc.) to track system performance, identify issues, and ensure quick recovery.

Security and Compliance:
Data protection & privacy: Ensure the backend systems are secure by implementing best practices for encryption, authentication, and authorization (e.g., OAuth, JWT).
Security audits: Regularly audit code and systems for potential vulnerabilities and enforce robust security protocols across applications.
Compliance with regulations: Ensure the backend systems meet regulatory and compliance requirements such as GDPR, HIPAA, or ISO standards depending on the industry.

Problem Solving and Debugging:
Troubleshoot production issues: Quickly identify and resolve backend issues affecting web and mobile applications, ensuring minimal downtime.
Optimize and refactor: Continuously refactor existing code and processes to improve system performance and reliability.
Technical debt management: Work on reducing technical debt by improving legacy code, enhancing system reliability, and ensuring maintainability.

Automation and Testing:
Unit & integration testing: Write comprehensive unit and integration tests to ensure the robustness of backend services.
Test-driven development (TDD): Implement TDD practices to ensure code quality and reliability.
Automated performance testing: Set up automated tools for load and performance testing to ensure backend systems are prepared for high traffic scenarios.

Version Control & Documentation:
Version control: Use version control systems (e.g., Git, GitHub, GitLab) to manage codebases, ensuring proper branching, merging, and collaboration practices are followed.
Documentation: Create and maintain detailed technical documentation for backend services, APIs, and system architecture to ensure transparency and ease of maintenance.

Innovation & Continuous Improvement:
Research & development: Stay updated on the emerging backend technologies, frameworks, and best practices, and integrate them into the product roadmap where beneficial.
Continuous improvement: Participate in regular retrospectives and team meetings to identify areas for improvement in processes, technology, and collaboration.

Key Skills & Competencies:
Proficiency in backend programming languages (e.g., Node.js, Python, Java, etc.).
Strong experience with relational and non-relational databases.
Expertise in API design and development (REST, GraphQL).
Experience with cloud platforms (AWS, Azure, Google Cloud) and CI/CD pipelines.
Strong understanding of data structures, algorithms, and system design.
Familiarity with DevOps practices, containerization (Docker, Kubernetes).
Strong problem-solving and debugging skills.
Excellent communication and collaboration skills.

Interested?