Position: Backend Engineer
Category: Node.js
English level: fluent
Years of experience: 1


My name is Hamzat Azeez and I'm primarily a JavaScript Back End Developer and work with Python and the Flask framework for Back End Development. I'd give an overview of my experience concerning this role from a personal project angle and work experience angle. 

As regards work experience, I currently work at Your Study Path in Lagos here. I'd like to dive a bit into the problem we're trying to solve before going into the technical aspects. While studying at the university, it was a common theme for students to visit the internet after their lectures to understand the said topic that is being taught. Luckily for them, there are centralized platforms, like Khan Academy that University students can use. Unfortunately the same can't be said for Secondary School Students and the company figured there has to be a way to bring that platform to them. 

The company decided to hire tutors that would teach the curriculum from the basics in-depth for selected subjects for a start while being recorded which can then be uploaded to the platform for Secondary School Students to access, create an online centralized question bank that students can access and also interaction between the tutors and students using comments and replies. 

On the Tech Side, for the front end, React is being used while on the backend which I work on, Node.js with the Express framework and MongoDB is being used. MongoDB is what is being used to store all the data for the website, while Cloudinary is being used to host media content. Currently, the application is a monolithic application with an MVC design pattern to decouple the user interface, data, and application logic. 

So far I've participated in the project, every step of the way such as Onboarding users, implementing hosting media content and resources, and implementing Question Bank and Mock Exams. One of the things I learned transitioning from personal projects to working in a team was that sometimes we couldn't predict if something would turn out successful or not, but we have to start somewhere. It is better to write some code than keep discussing what the ideal architecture should be.

As for the personal project, I created a server that simulates a text messaging service in the sense that we can send messages to and from two numbers. I used Node.js with the Express framework and PostgresSQL as my database of choice, which persists phone numbers allowed to send and receive messages.