Sr. Module Lead at Qualtech Edge || MaxLife Insurance. MEAN/MERN Stack Developer, Hybrid Mobile App Developer (Android/iOS) with Ionic & React Native
How To Deal With Technical Debt 1. Code quality — our code could be clearer to understand. There are no coding standards, it’s poorly designed, and there is a lot of complexity. In addition, there are a lot of code comments explaining what something does. 2. Testing — we need a proper testing approach (check Test Pyramid), from unit tests to integration to E2E tests. Coupling — between modules that block each other increases the time to deal with such code. 3. Out-of-date Libraries or Tools — we are using some legacy libraries or tools with several issues, such as security or inability to update to new technologies and platforms. We, as developers, always want to work with the most up-to-date technologies and efficient tools. 4. Manual Process — some processes in our delivery need to be automated. No automated builds, no CI/CD process. 5. Wrong or no architecture — we don’t have proper architecture, or it’s just a big ball of mud. Our architecture doesn’t reflect what we want to achieve with our system, or it doesn’t scale well. 6. Lack of Documentation — there is no documentation, or it’s not updated to reflect the system’s current state. 7. Lack of Knowledge Sharing — we don’t have a culture of knowledge sharing, so it isn’t easy for newcomers to get up to speed. We should always document our decisions and specifications during our work. https://lnkd.in/dqdmByKf