Job Details
Skills And Tools:
Job Description
Project
The project is a new FinTech startup focused on building leading edge infrastructure supporting consumer and business payments globally. Our goal is to be the number one FinTech infrastructure player in our niche in the Middle East & Africa. Obviously, there’s more to it than that, but we’re still in stealth mode so you’ll know once we’ve launched (or if you join the team!)
About the Role
We’re looking for a Backend Engineer with experience in payments or fintech and has a passion for writing working, clean and maintainable backend code using NodeJS and Express (part of the MERN stack). You’ll be joining a small core team of cross-functional engineers working directly with our founder who has designed and built over 150 web and mobile apps. You’ll be working in a squad to deliver the core FinTech product as well as new and exciting features for the application in a fast-paced demanding environment.
Location
Office is based in Smart Village, and we have certain flexibility for remote work.
Job Requirements
Job Responsibilities
- Design, build, test and deliver backend applications using NodeJS which will lead the digital payments space in Egypt and the Middle East
- Coding using TypeScript primarily with a bit of JavaScript
- Collaborate with cross-functional teams to define, design and ship new features
- Write clean, beautifully architected, reusable and maintainable NodeJS code using robust software architectural patterns
- Develop back-end REST API services which are exposed to secure and unsecure connections
- Develop caching mechanisms for the data to ensure speed and concurrency
- Write unit tests for all code developed before pushing to code repository and covers all cases
- Ensuring consistent code and best practices shared between our JS developers
- Work on bug fixing and improving application performance
- Identify and correct bottlenecks and fix bugs.
- Continuously discover, evaluate and implement new libraries to maximize development efficiency
- Maintain and update DevOps procedure for the backed continuously delivery and integration using Gitlab
Job Requirements
Engineering Requirements
- Bachelor’s or Master’s degree in Computer Science
- 4+ years’ experience developing back-end applications
- Solid understanding of the full software development life cycle
- Excellent understanding of software design patterns and how to write clean code
- Excellent knowledge and proficient in NodeJS and ExpressJS.
- Excellent knowledge and proficient in JavaScript and TypeScript
- Excellent knowledge and proficient in database configurations and migrations on MongoDB and MySQL/MariaDB
- Familiarity with Test Driven Development (TDD)
- Excellent understanding of writing code which fails softly and accommodates for proper error handling and logging mechanisms
- Experience working with RESTful APIs to connect frontend applications to back-end services as well as other third-party services
- Experience of source control system using GIT
- Familiarity with continuous integration, Gitlab CI and YAML is a plus
- Aware and able to quickly find the right libraries and frameworks to achieve tasks quickly and easily without re-inventing the wheel
Personal Qualities:
- Fluent in English
- Excellent communication skills
- Accuracy and attention to detail
- Fast learner, and interested in continuous learning
- Always looking to improve oneself and the quality of work delivered
- Takes responsibility for work and delivers work in a timely manner