Minha recomendação seria manter a propriedade dos arquivos em /home/dev/(www|docs) definido como DEV:DEV e permitir que o usuário APACHE grave nas pastas necessárias por meio de uma permissão de grupo.
Dessa forma, as pastas para as quais o APACHE precisa gravar terão permissões definidas como rwxrwxr-x , enquanto as pastas das quais ele precisa somente ler podem ter permissões definidas como rwxr-xr-x .
Há uma coisa extra a considerar neste cenário. Todos os arquivos / pastas criados pelo usuário APACHE serão de propriedade de APACHE:APACHE (supondo que o grupo padrão para APACHE user seja APACHE ). Por causa disso, talvez você não consiga gravar nesses arquivos / pastas com o usuário DEV , dependendo de qual umask está definido para APACHE user.
Para corrigir esse inconveniente, você pode definir o bit SGID na pasta para qual APACHE irá gravar. No seu caso:
chmod g+s /home/dev/docs
e defina o umask apropriado para APACHE user:
umask 0002
Dessa forma, todos os arquivos / pastas em /home/dev/docs criados por APACHE user terão o proprietário definido como APACHE:DEV e as permissões definidas como rwxrwxr-x para pastas e rw-rw-r-- para arquivos.
Observe que, embora seja uma solução aceitável para o ambiente de desenvolvimento, no servidor de produção, talvez você não queira que APACHE user tenha umask definido como 0002 .