Though Michael Fassbender did a sublime job and the movie itself was visually immersive, the actions of the main characters did not seem very smart. I could forgive the decision that the newly installed captain Oram (Billy Crudup) took about going to the unknown planet. But everything that happened after David cut his hair exactly the same way Walter head just makes you shake your head in amusement and think ‘Oh, come on!’. 
David, obsessed with the act of creation that had value in its end, uses any means available. It is remarkable that no one from the remaining crew has questioned imposter Walters’s identity and just carried on like the worst was left behind. Meanwhile, the last scene when Daniels (Katherine Waterston) realizes (finally!) that Walter is, in fact, David and she had totally screwed up with the thousands of colonizers and embryos on the ship… does give you slight goosebumps.