Não dependa de Frameworks. Aprenda com eles.

Muito se fala em escolher um framework para facilitar e agilizar o processo de criação de uma aplicação e com isso crescem os relatos de profissionais cada dia mais acostumados e viciados as comodidades que eles oferecem.

Não estou aqui para crucificar a utilização dos frameworks, pois também utilizo em meu trabalho, mas o problema é ficar cômodo ao que eles oferecem sem saber o que acontece por trás das cortinas.

Antes de lidar com framework sempre utilizei meus códigos sem frameworks e funcionavam. Eles vieram para implementar padrões e facilidade que não obtinha antes e que com eles tudo ficou muito mais fácil. Mas isso, para mim, não se tornou uma prisão. Se não existe determinada funcionalidade no framework, ou ainda, se o framework implementar determinada funcionalidade de uma forma complexa para o tamanho de sua necessidade, não exite em escrever você mesmo adaptações, plugins, extensões, etc, ao seu framework.

Sei que para escrever códigos ao nível de um bom framework é quase impossível sozinho. Mas peça conselhos, teste e principalmente aprenda o que ele já faz e o que não acontece como vc esperava e altere este comportamento.

Essa tarefa não só vai agregar valor a sua aplicação mas também, e principalmente, aumentará seu conhecimento a respeito da linguagem que você, ou sua empresa, escolheram trabalhar.

Ser curioso no mundo da programação é uma parte vital para evitar o comodismo imperativo nos dias de hoje que reina sobre os "profissionais" que lidam bem com frameworks mas sem eles não sabem realizar tarefas simples.

Saiba utilizá-los mas também aprenda muito com eles.

Lembre também que o framework foi escrito com base em padrões muito consistentes e testados massivamente ( pelo menos os mais famosos ). Se uma coisa funciona bem neste framework não precisa reinventar a roda, utilize. Mas se ele não faz o que você necessita ou não do jeito que você precisa, primeiro revise suas necessidades, aprenda o que ele faz e então assim faça sua adaptação.

Pensando desta maneira você estará utilizando frameworks da maneira correto com você mandando nos comportamentos deles e não ele ditanto as regras sobre suas aplicações.