How good engineers write bad code at big companies