It depends on what you are complimenting them for.
說得(很)好 - you spoke well / what you said was said well / what you said was said well and I agree with the content / what you said was said well and you expressed yourself well etc.
幹得(很)好!Or 做得(很)好 is probably the best translations for "good job". You can always just say "好"、“很好、”非常好“ or ”不錯!“which mean "good", "very good", "very very good" and “really rather good"
孺子可教 literally means something like “這個年輕人可以教導” or "這個少年值得培養" - this young person is worth teaching. Just a note, I have never ever heard anybody say this.
Be careful
-太聰明了 it just a way of saying somebody is really clever
-太棒了 just means "awesome"