If you put too much pressure on engineers to produce lines of code, they will optimize for that at the expense of quality/maintainability of the project.
I have worked for a number of startups which advocated the practice of 'cutting corners'. I think it doesn't work in practice because technical debt tends to creep up on you much sooner than you think. Unless the whole company's future is hinging around meeting a specific deadline for a specific feature, then there is no excuse for cutting corners.
I think the personality of the engineer is much more important than their skills. I have worked at companies that fired people after the first month - This is ridiculous.
You wouldn't fire a business executive after 1 month on the job because of poor growth metrics - The downtrend is probably a flow-on effect from past periods of mismanagement. This is exactly the same in engineering. You can't measure the consequences of technical decisions until many months of even years after they are implemented.
While you might think you're firing 'bad engineers' - You are in fact just firing random engineers based on random events like market timing, which team they are part of, direction of the wind, phase of the moon, etc... Just chaos.