You will use your problem solving skills and creativity to deliver scalable and optimized web apps, and potentially mobile apps.
The role doesn’t require a specific programming language or framework for the back-end since we follow the separation of concerns (SoC) design principle in building our apps. You can choose whichever you are most experienced with amongst the enumerated languages below. The back-end role is better suited to a master of one the languages than being just an intermediate with many.
What You’ll Do
- Use ANY of the following programming languages in building the back-end of a software.
- Python (Django)
- Java (Spring)
- Collaborate with the Front-end developer / Project lead to scope out project versions or features
- Design data models based on software requirements
- Write tests for features you code and bugs you fix. Not strict TDD, but a potential to increase test coverage as the web app scales.
- Participate in weekly stand-ups and develivering assigned tasks for each sprint
- Improve CI/CD pipelines as the web app scales
What You Should Have
- Experience in being part of an entire software development life cycle.
- 3+ years of experience as a Back-end Developer
- Excellent working knowledge of Python, Java, or Node.js.
- MongoDB, MySQL, OR PostgreSQL
- Hands-on experience with database design and documentation
- Experience in developing and managing systems using cloud computing products (AWS)
- Experience with Docker and related container-orchestration technologies
- Ability to follow set coding standards and best practices
Excellent verbal and written communication skills.
Other skills that will give you an advantage
- Ability to craft APIs with GraphQL, Graphene, JWT, Swagger, etc. or use services like Harusa.io
- Experience with web integration test technologies like Cypress.io.
- AWS technologies like, API Gateway, Fargate, SQS, Lambda, Elastic Load Balancing, Servless, or microservices architecture.
- Systems Architecture