
A seguir, alguns tópicos que são características de bons desenvolvedores web:

Ao invés de utilizar uma IDE que simplesmente gera um monte de linhas "sujas", porque não utilizar um editor de texto (VI, Gedit, Notepad++) e começar a criar os scripts? Há várias vantagens em códigos HTML escritos a mão:
Eu, por exemplo, utilizo o Eclipse PDT como IDE.
O W3C possui uma ferramenta online que verifica qunado o código HTML escrito é válido ou não, e existe um debate sobre quando o código deve ser válido ou não.
Alguns motivos para um código válido são:
Todo Desenvolvedor Web deveria usar linux. É gratuito/livre, possui vários programas "de fábrica", permite a criação de um servidor sandbox rapidamente, permite fazer várias experiências de configuração e, o mais importante: lhe torna mais produtivo.
Uma boa workstation para um desenvolvedor web possui um servidor localhost para a criação rápida dos scripts. No linux é bastante fácil configurá-lo, e o consumo de memória é baixissimo.
Eu utilizo o Ubuntu 8.04 LTS.
Esta também é uma recomendação dos melhores livros de PHP.
Os scripts devem ser independentes da base de dados, por exemplo: se for decidido amanhã que todos os dados passarão de MySQL para PostgreSQL, não será necessário reescrever todas as funções que utilizam MySQL para usarem as funções do PostgreSQL. Para isso, basta aprender uma simples API.
Eu utilizo a PEAR MDB2 como camada de abstração do BD.
O Javascript está em todo lugar hoje em dia, junto com a moda do AJAX. Bons Desenvolvedores Web devem possuir uma visão geral dos principais frameworks js disponíveis e escolher o melhor para determinada tarefa. Alguns frameworks populares seriam o YUI library, Prototype, jQuery, MooTools, Dojo Toolkit e Ext JS, por exemplo.
Algumas extensões do Firefox ajudam, e muito, na hora de depurar páginas, problemas de CSS, funções em javascript, e até mesmo na performance do site. Essas seriam algumas "obrigatórias" para desenvolvedores web:
Esteja sempre lendo. Procure posts sobre programação no Digg, del.icio.us, Infoblogs e leia revistas como Smashing Magazine, blogs como YUI blog e NETTUTS. Se você não sabe inglês, é bom aprender porque as melhores fontes em desenvolvimento são em inglês.
Os livros da O'Reilly e Apress também são uma ótima fonte de aprendizado e atualização.
Não fique focado apenas em PHP. Claro, conheça mais sobre ele, mas olhe à sua volta que há coisas fantásticas acontecendo, como RoR, Python, e outros.
Um Desenvolvedor Web que não ouviu falar de Ruby On Rails não é um bom desenvolvedor web.

Quando não se utiliza controle de código, começa a aprecer um stress quando se tenta colocar programadores para trabalhar juntos. Os desenvolvedores não terão como saber quem fez o quê e erros não poderão ser desfeitos facilmente. Um dos pontos forte de controle de versão é que o código é copiado para cada desenvolvedor, e isso dificulta a perda de código.
O Subversion é uma ótima escolha para controle de código, e até de imagens.
Por que ficar reiventando a roda? A cada projeto novo, criar todos os CRUD's e funções?
A maioria dos frameworks já trazem a parte "repetida" dos projetos toda pronta. Nada de fazer formulários de login e páginas de cadastro. Alguns trazem uma automação tão boa que o desenvolvedor só precisa se preocupar com o modelo de negócios do projeto. E essa é a parte boa dos projetos.

Eu recomendo e uso o CakePHP.