Discordo completamente quando as pessoas dizem "sim, multitarefa é normal"
Isso não é normal! De maneira alguma, é muito pouco natural para um desenvolvedor realizar várias tarefas em vários projetos (explicarei mais adiante). Por outro lado, a multitarefa é muito comum entre os desenvolvedores. Definitivamente, é algo que você deve se acostumar. Portanto, a verdadeira resposta para sua pergunta é: como fazer várias tarefas?
Antes de tudo, você não deve simplesmente aceitar seu destino, porque "você é um excelente funcionário" e isso significa que você precisa executar mais tarefas do que pode lidar. Nem um pouco, você não. Às vezes, as pessoas recebem várias tarefas porque não há mais ninguém. Às vezes, os gerentes não conseguem lidar com seu trabalho, então delegam, aplicando multitarefas em sua equipe porque não conseguem lidar adequadamente com o cronograma do projeto. Portanto, você deve definitivamente tentar determinar se você está sendo solicitado a realizar várias tarefas porque isso faz parte do seu trabalho ou porque outras pessoas estão sendo incompetentes. De qualquer maneira, você pode julgar por si mesmo se isso é aceitável ou não. Se você não se sentir confortável [com o seu trabalho], há outros lugares onde você pode encontrar trabalho. [Você, o desenvolvedor, é a mercadoria. Os empregadores sabem disso e rezam para que você nunca perceba.]
Agora, sobre multitarefa, discordo 100% quando as pessoas dizem "sim, basta alternar entre si e garantir que você esteja fazendo a mesma quantia em cada projeto". Desculpe, mas esse é um péssimo conselho.
Primeiro, você deve entender como seu cérebro funciona quando estiver desenvolvendo um software (eu sei que há outras tarefas envolvidas, mas vamos nos concentrar nessa). Você primeiro precisa se "conectar", o que significa que você precisa se concentrar muito e colocar sua mente em uma posição em que tenha tudo mapeado em sua cabeça. Todos os nomes de variáveis e métodos, o fluxo de trabalho do seu código, o modelo de objeto, os threads indo lado a lado, tudo. Normalmente, leva-me 15, talvez 20 minutos, para entrar "na zona".
Quando você chega a esse estado, está realmente voando e escrevendo código como se estivesse andando de bicicleta. No momento em que você é interrompido, você pode perder tudo. Se a interrupção for longa o suficiente (5, 10 talvez 30 minutos), você perderá esse estado de espírito e terá que começar tudo de novo.
Portanto, a multitarefa é terrível porque obriga a deixar "a zona" e seguir para outra coisa. Se você está constantemente mudando, isso significa que você não está sendo produtivo, pois toda vez que você muda para uma nova tarefa / projeto, precisa perder 15 a 20 minutos para entrar na zona novamente (sem mencionar que isso derrete seu cérebro lentamente).
É como um multiencadeamento: em algum momento, o custo de alternar o contexto do encadeamento a cada dois ciclos é muito alto, de modo que a CPU acaba gastando mais tempo alternando os contextos do que executando as tarefas reais.
Eu recomendo a leitura de um artigo de Joel Spolsky sobre este assunto:
http://www.joelonsoftware.com/articles/fog0000000022.html
Portanto, meu conselho é: tente aprender a (não) multitarefa, porque é realmente comum. Mas também tenha certeza de que está confortável em fazê-lo. Algumas pessoas podem demorar mais tempo para se concentrar e sofrerão mais que outras quando realizarem tarefas múltiplas; e tudo bem também. Não é porque é comum que seja considerado normal.
Joel colocou bem quando disse:
De fato, a verdadeira lição disso tudo é que você nunca deve deixar as pessoas trabalharem em mais de uma coisa ao mesmo tempo. Verifique se eles sabem o que é. Bons gerentes vêem sua responsabilidade como remover obstáculos, para que as pessoas possam se concentrar em uma coisa e realmente fazer isso.