Apprentice Engineering allows an engineer to make basic contraptions up to a maximum potential skill of 75.
Requirements: Level 5
You can learn Apprentice Engineering from any of these NPCs below.
Horde trainers:
 Thund in Orgrimmar. Thund in Orgrimmar.
 Graham Van Talen in Undercity. Graham Van Talen in Undercity.
 Twizwick Sprocketgrind in Mulgore. Twizwick Sprocketgrind in Mulgore.
 Mukdrak in Durotar. Mukdrak in Durotar.
- Tinkerwiz in The Barrens.
Alliance trainers:
 Jemma Quikswitch in Ironforge. Jemma Quikswitch in Ironforge.
 Sprite Jumpsprocket in Stormwind City. Sprite Jumpsprocket in Stormwind City.
 Jenna Lemkenilli in Darkshore. Jenna Lemkenilli in Darkshore.
 Bronk Guzzlegear in Dun Morogh. Bronk Guzzlegear in Dun Morogh.
Journeyman Engineering
Maximum potential skill: 150
Requirements: Level 10, Engineering 50
You can learn Journeyman Engineering from any of these NPCs below
Horde trainers:
 Franklin Lloyd in Undercity. Franklin Lloyd in Undercity.
 Nogg in Orgrimmar. Nogg in Orgrimmar.
Alliance trainers:
 Trixie Quikswitch in Ironforge. Trixie Quikswitch in Ironforge.
 Lilliam Sparkspindle in Stormwind City. Lilliam Sparkspindle in Stormwind City.
Expert Engineering
Maximum potential skill: 225
Requirements: Level 20, Engineering 125
You can learn Expert Engineering from  Roxxik (Horde) in Orgrimmar and from
Roxxik (Horde) in Orgrimmar and from  Springspindle Fizzlegear (Alliance) in Ironforge.
Springspindle Fizzlegear (Alliance) in Ironforge.
Artisan Engineering
Maximum potential skill: 300
Both factions can learn Artisan Engineering from Buzzek Bracketswing in Tanaris at Gadgetzan.
Requirements: Level 35, Engineering 225