This week was more of starting with code. And by starting I mean, we went full mood in coding. Since Monday, as a team, we started working on the project. Just to give you a little context, the project is in the area of health care.
In the next paragraphs, I would describe my experiences with a different stack of technologies and starting to use an agile methodology in a software development project.
Back-end development
First, we needed to deploy our database in AWS (Amazon Web Services). For this, Mongo Atlas helps us a lot having the database in the cloud.
After this, we started working on the API. For this, we are using Node JS with the framework Express JS. We started reviewing a lot of documentation so we can start with the model user, and how we would handle the token and the encryption when login and register a user.
Other models, services, controllers, and routes were implemented along the week as well. Every one of these, with a complexity of their own.
Back-end development sure is a lot of work and imagination when the project gets bigger and bigger, but an important thing to keep in mind is to report errors as soon as we encounter them so we can fail fast.
Front-end development
Front-end development is hard work as well, doesn't matter what anyone tells you. It is something. This part we are developing using React, meaning, reactive programming.
This week on this part, we started working on the components the different roles are going to have. Also, we attempt to connect the back-end and the front-end, still a work in progress.
Kanban
Kanban is a visual system for managing work as it moves through a process. Kanban visualizes both the process (the workflow) and the actual work passing through that process.
The goal of Kanban is to identify potential bottlenecks in your process and fix them so work can flow through it cost-effectively at an optimal speed or throughput.
For this project, we started to implement Kanban to see the workflow of the project going. Kanban is a very popular framework for implementing agile software development. It requires real-time communication on capacity and total job transparency. Work items are visually represented on a kanban board, allowing team members to see the status of each one at any time.
So far this system is working for us, we are still learning a lot about this methodology. And it has helped us to identify the tasks everyone is working on.
What’s next?
We are still in the early stages of the project, on Monday we are going to have our first demo with the client. I’ll give all of you the lessons I will have on that, I’m actually a little nervous, hope everything works fine!