Backend Engineer 🔥
About the role
We are looking for an experienced Back-end engineer for curating the structure of server-side information. In this role, you will primarily write server components and APIs to be utilized by front side engineers and UX designers. The day to day consists of implementing reusable code libraries, good APIs, generating data storage solutions, optimizing servers for speed and stability, implementing security structures, and collaborating with the frontend engineers to develop a Clean Code / Clean Architecture experience through excellent Software Design and Software Architecture good practices.
Back End Engineers should possess good knowledge about algorithms, data structures, design patterns and Software Engineering in general. A basic understanding of front-end techs such as React, HTML and CSS is needed for efficiency. Vast knowledge of backend coding in NodeJS platforms is required for candidacy. Well qualified applicants will possess strong communication, organizational and time-management skills.
Confidently ship small features and improvements with minimal guidance and support from other team members.
Develop features and improvements to Andela products in a secure, well-tested, and performant way.
Collaborate with Engineering Managers, Backend Engineers, Frontend Engineers, Machine Learning Engineers, DevOps professionals, Product Managers, Designers, to solve common goals and maintain a high bar for quality in a fast-paced, iterative environment
Conduct Code Review within our Code Review Guidelines and ensure your colleagues' contributions receive a swift response.
Solve technical problems of moderate scope and complexity.
Recognize impediments to our efficiency as a team ('technical debt'), propose and implement solutions
Translate requirements into Conceptual Designs and Technical Designs
Excellent communication skills
Experience with database modeling (ERD/ERM) and migrations
Significant experience with API Creation & modeling
Experience with Integration tests
Knowledgeable about Software Design Principles, e.g.: Abstraction, Encapsulation, Decomposition, Generalization, Coupling and Cohesion, Separation of Concerns
Understanding of scaling applications to handle high data traffic
Clean Code / Clean Architecture experience; Design patterns understanding and correct application, e.g.: Singleton, Factory, Adapter, Strategy etc
A basic understanding of front-end tech such as React, HTML5, CSS3 is needed for efficiency