Senior Software Engineer
Job Overview
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
Collaboration & Ideation:
- Collaborate with development teams and product managers to ideate software solutions.
- Collaborate with data scientists and analysts to enhance software functionality and performance.
Design & Architecture:
- Design scalable client-side and server-side architectures.
- Ensure solutions follow best practices for maintainability and performance.
- Develop features with a mobile-first and responsive design approach.
Development:
- Build visually compelling and user-friendly interfaces using technologies such as React, Redux, and Webpack (or equivalent).
- Develop and maintain robust backend applications and well-structured databases.
- Write efficient and secure APIs to enable seamless integration between application components.
Testing & Maintenance:
- Conduct thorough testing of software to ensure responsiveness and efficiency.
- Debug, fix, and upgrade software as needed, addressing any issues promptly.
Security:
- Implement security standards and data protection practices to safeguard application data and user privacy.
Documentation:
- Prepare and maintain clear, detailed technical documentation for development processes, features, and system architecture.
Education, Experience & Qualifications
- Bachelor’s Degree in Computer Science, Software/ computer engineering or any other related field.
- 1–3 years of professional experience in a similar backend development role.
- Knowledge of one or more backend stacks such as PHP, Python, or Node.js.
- Solid understanding and application of Object-Oriented Programming principles.
- Essential familiarity with front-end technologies, including React, Redux, and Webpack.
- Experience or exposure to containerization technologies such as Docker, Docker Compose, and Kubernetes.
- Proven ability to work in a collaborative environment, demonstrating eagerness to learn and grow.
- Prior experience in designing and implementing well-architected, scalable software solutions.
- Expertise in building and managing databases, writing effective APIs, and ensuring software responsiveness.
- Capability to troubleshoot, debug, and upgrade software for optimal performance.
- Knowledge of security protocols and data protection measures.
- Strong communication skills and the ability to write clear technical documentation.
- Familiarity with Software Testing, React.js and Typescript is a plus
Behavioral Competencies
- Initiative
- Problem Solving
- Team Oriented
- Adaptability
- Ability to Work Under Pressure
Technical Competencies
- Information Technology Infrastructure
- Information Technology Programs and Applications
- JavaScript
- Node.js
- Python
- PHP
- Object-Oriented Programming
- Docker, Docker Compose
- Web software design