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