Je savais que les administrateurs de base de données s'en sortaient avec peu ou pas de compétences en programmation, mais tous les administrateurs de base de données que j'ai jamais considérés comme bons avaient au moins des compétences de programmation raisonnables. Un ou deux dont je peux penser avaient des antécédents de développement substantiels et étaient assez bons développeurs à part entière. Il y a une bonne quantité d' outils open-source écrits par des personnes qui travaillent comme DBA dans leur travail de jour et IIRC le gars qui a écrit TOAD travaillait comme DBA.
Selon le rôle, vous pourriez vous retrouver à écrire ou à régler des requêtes, à écrire des scripts pour automatiser des tâches ou à consulter sur la conception d'applications. Dans certains cas, vous pouvez simplement vous occuper d'un groupe de serveurs via OEM ou un autre outil de surveillance.
Les environnements de développement «d'entreprise» modernes tels que .Net ou Java sont suffisamment complexes pour qu'un développeur puisse faire carrière simplement en se spécialisant dans ces domaines. En tant que DBA, en particulier dans le domaine du développement, avoir une connaissance pratique de C # ou de Java peut ne pas nuire, mais vous ne passerez probablement pas beaucoup de temps à les coder.
Vous obtiendrez probablement plus de kilomètres quels que soient les outils de script utilisés sur votre plate-forme, bien que de nombreux systèmes exposent des API de service .Net, Java, COM ou Web. Si vous devez coder quelque chose par rapport à ces API, vous aurez besoin d'au moins une connaissance pratique de base de quelque chose qui peut consommer cette API. Cependant, des compétences avancées en architecture d'application ne sont généralement pas nécessaires pour ce faire.
Certains développeurs auront de solides compétences en bases de données, mais la peur irrationnelle des bases de données est assez courante dans les cercles de développement. De nombreux développeurs ne parviennent pas non plus à vraiment comprendre le paradigme des «opérations définies» qui sous-tend SQL. En tant que DBA Dev, vous pouvez vous retrouver face aux conséquences de cela, et peut-être avoir à intervenir dans le code de procédure stockée pour résoudre les problèmes de performances.
L'ETL et les outils entourant la base de données peuvent également relever du DBA. J'ai vu pas mal de rôles DBA annoncés qui semblaient impliquer une quantité importante de travail de développement back-end. Ce sera plus courant dans les petites entreprises. Une affiche récente souhaitait intégrer des mesures personnalisées dans Oracle Enterprise Manager, qui dispose d'une API de plug-in pour ce faire. Il est assez courant de voir des exigences comme celle-ci apparaître, et essentiellement la seule façon d'y parvenir est d'écrire du code de collage.
Il existe de nombreux «Tools Guys» travaillant dans l'informatique et ils peuvent faire un travail utile malgré le parochalisme. Cependant, lorsque les outils s'épuisent, souvent la seule façon de faire quelque chose est d'écrire un peu de code pour le faire. C'est là que les compétences en programmation séparent les hommes des garçons.