Human error exists amongst computer programmers too. Anyone who has written computer software, will know that even though your program looks good and logical; the first time you run it it will almost certainly throw up some errors or lock up and not work at all because of a logical cul-de-sac you hadn't thought of. You then spend time working through the errors and rewriting the code. Even then if someone other than yourself uses the software, they will often find bugs that you hadn't, because they will almost certainly take the software to places you never thought of.
AF447 had the STALL warning stopping because the aircraft thought it was below 60 kts IAS.
The tragically unecessary PIA crash possibly had the landing gear warnings suppressed by other warnings.
Which self driving car was is that thought the grey side of a large lorry was just the sky and crashed into the lorry?
Even if an autonomous flight deck were possible - and deemed safe - who would compute the take-off performance, monitor and cross-check the fuelling, (and decide the fuel load), do the walk-around and monitor the loading? Engineers could if there were many more of them, but I really think you need these things to be done by someone whose life will depend on getting it right by actually flying in the aircraft, not waving it goodbye from the ground. Who would liaise with Ops and ATC regarding slots etc? How would the aircraft taxi to and from the runway? Who would check the controls were not reversed before take-off?
The Cabin Crew have their own work to do, they would not have time to prepare the aircraft as well.
Boeing MCAS is not FBW, it is a bodge, and a bad bodge at that. If Boeing had introduced FBW on the 737 years ago - even just in pitch - and certified it, they would still be a brilliant manufacturer and the MAX would have just required some software parameter changes to the FBW in pitch to account for the longer engines. As it was, the company changed and concentrated on making money rather than making airliners.