Hi, I believe I'm a decent programmer, may not be a rockstar or anything. Recently I've changed my company to one of the "sought afters", and I've noticed that I've been getting some comments about the quality of work and some uncomfortable questions about my skills. I've been forced to change my design more than once during code review and there were other times when my PR was outright rejected as it did not meet the required standards. Now I'm a little worried that if my situation doesn't change, my career would suffer. I've started to watch a few videos online about design. But I'm not sure if they're going to really help as they usually talk about very basics which doesn't help in real world coding. I usually take 3-4 tries with some significant amount of testing to get my code to a working state. I refer to stack overflow or ask my colleagues if I get stuck on some design / technology feature which I haven't seen before. I feel the above contributes to reduction in my speed of delivery and the rush to complete the deliverable on time, compromises the quality. Are there any good ideas to improve one's coding / design skills significantly ? The challenge here is to deliver good quality code, while maintaining a decent speed of delivery.