extensive coding knowledge