I am working as a software engineer in an Indian Software company. For the past 1 year, I have been working on an in-house chat application used within the organization. Some Points I noticed:-
- There is no proper story for any feature.
- Designs are made by the designers who are available means no dedicated designers are provided and even if a design is provided, it didn't cover all the cases needed to develop the feature.
- No QA/Tester is provided, same as designers, QAs are provided only if they are available, so when a new QA tests the application he raises bugs which are not bugs or skips features because he didn't know all the features.
- The system itself is written poorly and when I told my lead to refactor the code he never agrees to it unless it is a blocker for another feature.
- Only I am the permanent developer on the whole team anyone else becomes the part of the team if he/she is available or do not have much work at that time. Hence problems like duplicate code, inefficient code because of inadequate system knowledge, Or including freshers who want to learn Angular or .Net
- Our stories are made by seeing all the similar products such as Skype, slack, flock, WhatsApp, etc and it feels like we are just coping features and not innovating or solving any problem. I mean if we just copying them why not use them why wasting their resources and my time in the same thing.
- I, Myself started as a fresher (so this my first project) so don't I know all the things or how to do it but my lead still questions me why this thing is taking so much time even after I told that I have to first study it before implementing.
- Whenever I went to my for discussions about the solution for any given task he always chooses the solution which is taking less time to implement even if it is bad practices.
- Whenever I ask my lead to implement test cases in Backend code he says we will do but after developing the features needed to attract more users.
- If something goes wrong on the production site we patch it for the time being as soon as possible so the solution implemented in the patch is inefficient but when a new feature is being developed it is developed on the top of that patch without refactoring it first.
I talked to HR about this a few times, but no actions were taken. I think the organization is benching me or ruining my time and career. There are so many projects available and they even have openings but they are not changing my project because my lead said so.
What I think is that the organization is not interested in this project otherwise it will provide the necessary resources needed.
I learned a lot a lot in the past year and my coworkers are also friendly but it is just that I get frustrated by working on this product with the current leadership.
What should I do, do I leave the organization or talk to them again or any other suggestions?