Most full stack developers have breadth but not depth. It's incredibly time-consuming to have a complete understanding of the entire stack and no matter what you do, even if you live and drink code and do it all the time you will not be a complete engineer, there is just too much and you will never retain it all. Rather than try to be this ninja superstar that start-ups all look for these days its more realistic to be able to work full-stack but specialize in a particular field. Machine learning and a solid academic background in stats, math and understanding of concurrency will get you just as far as a guy who knows React, Sass, HTML5, Python, Ruby, Go, MongoDB, MySQL, AWS, Redis, Celery, Kafka and Hadoop.