how many engineering types are there