S
Fullstack Software Engineer Share a Chair
Share a Chair
Mar'2021 - May'2022
Currently working as a Backend developer on the Shareachair.io platform involves the following things:
âž¡ Implementing the platform's middlewares which are:
• role based authentication middleware
• data requests validation middleware
âž¡ Implementing the platform's REST-APIs routes including dynamic routes.
âž¡ Implementing the platform's controllers that:
• handle requests sent from the client side of the platform.
• utilise middlewares to validate the data in the requests.
• return appropriate data as per the client's request.
âž¡ Implementing the models used by the platform's database which entails:
• Define the fields and their Types used by MongoDB collections(tables)
• Write the interfaces for all the models
âž¡ Reviewing the CTO's (my backend partner) code to ensure it's well refactored, maintainable and meaningful.
âž¡ Writing the tests for this backend and automate testing via github actions.
âž¡ Deploying the backend to Heroku when the CTO is away.
âž¡ Advising on improving the technologies used to provide a better platform expereince such as how we ought to utilise:
• GraphQL which could speed up the delivery of all data requests from the client side of the platform.
• Redis which if implmented would run alongside the existing database so as to minimise the time used to fetch frequently used data from the database through it's cache type of database.
• Research on best REST-API standards for the Node.js/Express, TypeScript, MongoDB application we write.
The technologies we use are mainly Node.js/Express, TypeScript, Mongoose and MongoDB.
We use TypeScript since it reduces production errors. We use the MVC architecture