Yup, e não são só os júniores, infelizmente os profissionais mais esperientes também trabalham muitas vezes horas extras. Isso depende mais do projecto do que o nível de experiência, embora os júniores são mais fáceis de cair nisto pois pensam que precisam de sacrificar para ganhar experiência (monetariamente, fisicamente, tempo e dedicação, etc) e muitos não têm família e filhos nem contas para pagar. A verdade é que muitos não têm noção do próprio valor no mercado (há muita falta de profissionais IT), e são aproveitados/escravizados pelas empresas que tentam oferecer o menos possível e a fazer-lhes pensar que não valem muito e que há muitos outros que aceitam o trabalho.
As pessoas crescem habituadas com a mentalidade de que precisam é de focar na aprendizagem e evolução aceitando o que quer que seja (não só em condições como em projectos/tecnologias) e que devem estar gratos por terem qualquer trabalho, e isso torna-os bons escravos.
As empresas tentam competir e ganhar projectos, e reduzir custos recorrendo a estimativas apertadas ou até irreais, muitas vezes sem ter em conta da experiência da própria equipa. E ao verem que os developers se submetem às horas extras (em alguns casos, horas extras todos os dias), logo não querem saber do bem estar deles e até torcem o nariz se algum developer alguma vez discordar ou tiver família.
Já fiz horas extras de vez enquando em alguns projectos e em situações pontuais, no entanto já me deparei com colegas que fazem sacrifício em demasia ou desnecessariamente, e mesmo sabendo que existem graves problemas de gestão. É incrível o que certas pessoas fazem a acreditar que isso seja relevante, quando na verdade as empresas tratam-nos como peças (outsourced por umas quantas empresas intermediárias) e habituam-se a ter pessoas a sujeitarem-se a essas coisas. Como é que podemos querer que a gestão melhore, se na perspectiva dos managers os developers lá se desenrascam? :/