Job Description
Job Purpose The purpose of this role is to produce scalable software solutions. As a Software Engineer, you will be part of a cross-functional team that's responsible for the full software development life cycle across Tarjama, from conception to deployment. Your primary focus will be developing and implementing user interface components following well-known design patterns and workflows, while also ensuring the performance and scalability of back-end systems.
Duties & Responsibilities
- Collaborate with development teams and product managers to ideate software solutions.
- Design client-side and server-side architectures to ensure scalable and efficient applications.
- Develop visually appealing front-end components using technologies such as React, Redux, and Webpack.
- Build and manage well-functioning databases and applications.
- Write effective APIs to facilitate communication between different components of the software.
- Conduct thorough testing of software to ensure responsiveness, efficiency.
- Debug, fix, and upgrade software as needed, addressing any issues promptly.
- Implement security and data protection settings to safeguard sensitive information.
- Create features and applications with a mobile-responsive design.
- Write comprehensive technical documentation for all aspects of the development process.
- Collaborate with data scientists and analysts to enhance software functionality and performance.
Education, Experience & Qualifications
- Bachelor’s Degree in Computer Science, Software/ computer engineering or any other related field.
- (1-3) years of working experience in a similar role.
- Proficiency in Django and Python
- Knowledge in JavaScript and Node.js is a plus.
- Solid understanding and application of Object-Oriented Programming principles.
- 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
- Object-Oriented Programming
- Docker, Docker Compose
- Web software design