Job Purpose
As a Senior Software Engineer at Tarjama&, you will lead and contribute to all phases of the software development lifecycle, working across a wide range of programming languages and technologies. You will design, develop, and optimize scalable, high-quality software solutions that meet complex business needs. This role requires versatility in working on both frontend and backend systems, collaborating with cross-functional teams, and mentoring junior engineers to foster a culture of technical excellence.
Duties & Responsibilities
Cross Functional Collaboration:
- Work closely with product, design, development, QA, and DevOps teams to ideate and implement innovative, high-impact software solutions across different technologies and platforms
- Partner with stakeholders to deeply understand user requirements and translate them into scalable and maintainable technical solutions
- Collaborate with data teams and infrastructure specialists to optimize system performance, scalability, and reliability
Architecture & System Design:
- Design and implement robust, efficient, and secure software architectures, covering both server-side and client-side components
- Architect scalable, modular, and maintainable solutions leveraging modern frameworks, libraries, and cloud-native technologies
- Develop and integrate solutions using both relational and non-relational databases, ensuring data consistency and high availability
Development & Implementation:
- Lead the development of full-stack applications, writing clean, high-quality, and maintainable code across multiple programming languages and frameworks
- Build and maintain APIs, services, and user interfaces that ensure seamless integration between system components
- Develop responsive and user-friendly frontends, as well as performant and secure backends, adapting to project requirements
Testing, Optimization & Maintenance:
- Conduct thorough testing at all levels (unit, integration, system, and performance testing) to ensure software robustness and reliability
- Continuously optimize code and system architecture for scalability, security, and maintainability
- Proactively troubleshoot, debug, and resolve technical issues across the stack to maintain system
health.
Security & Compliance:
- Implement best practices for secure coding and ensure compliance with data protection standards
- Safeguard applications against vulnerabilities across the full stack, with particular attention to secure API development and user data protection
Documentation & Best Practices:
- Maintain detailed and clear technical documentation for codebases, system architectures, and processes to support long-term maintainability
- Foster a culture of continuous improvement by promoting code reviews, knowledge sharing, and staying up-to-date with emerging technologies and best practices
Education, Experience & Qualifications
- Bachelor's Degree in Computer Science, Software Engineering, or a related field
- 3-5 years of experience in software development, with hands-on experience across a variety of programming languages (e.g., JavaScript/TypeScript, PHP, Python, etc.)
- Proven experience working on both frontend and backend systems, including web services, APIs, microservices, and database management
- Solid understanding of data structures, algorithms, software design principles, and system architecture
- Experience with cloud infrastructure (AWS, Azure, Google Cloud), containerization (Docker, Kubernetes), and CI/CD pipelines
- Familiarity with both relational (MySQL, PostgreSQL) and non-relational (MongoDB, Redis) databases
- Strong version control skills (Git) and exposure to agile development environments
Behavioral Competencies
- Initiative
- Problem Solving
- Team Oriented
- Adaptability
- Ability to Work Under Pressure
Technical Competencies
- Full-Stack Development (Frontend & Backend)
- Web Software Architecture & Design
- Software Testing & Quality Assurance
- Cloud & Infrastructure Services
- Containerization & Deployment (Docker, Kubernetes)