Treinando um 'substituto', como impor padrões?


9

Não tenho certeza de que este é o site de troca de pilhas certo, mas aqui vai ...

Escopo


Eu trabalho para uma pequena empresa que emprega algumas centenas de pessoas. A equipe de desenvolvimento da empresa é pequena e trabalha com visual foxpro. Um departamento específico da empresa me contratou como 'atirador solitário' para consertar e aprimorar um sistema de faturamento pré-existente. Peguei com êxito um aplicativo do Access que apresentava muitos riscos e limitações e o converti em um aplicativo C # direcionado a partir de um servidor SQL.

Eu obtive recentemente minha graduação e não sou especialista, de forma alguma. Para ajudar a compensar isso, senti que ganhar certificações da Microsoft me forçará a entender mais sobre o .net e como ele funciona.

Então, depois de notificar com 9 meses de antecedência, três meses atrás, um substituto finalmente apareceu. O papel deles é aprender o que eu tenho projetado para tentar suportar os aplicativos projetados em C # .


A substituição

Recém saído da faculdade, sem experiência de trabalho no mundo real, o primeiro instinto para qualquer coisa que envolvesse dados foi e ainda é caixas de listagem ... sempre que os dados são mencionados, a caixa de listagem é o controle de escolha para a substituição. Isso chegou ao ponto, não importa quantas vezes eu discuta outros controles, onde eu vi cinco caixas de listagem em um único formulário. A experiência em sala de aula foi quase todo o desenvolvimento de console C ++.

Portanto, um exemplo de meu interesse é em um aplicativo winforms: Os usuários precisam digitar Razões em uma tabela para selecionar mais tarde. Dado que sei que existe um conjunto de dados fortemente tipado, basta arrastar a fonte de dados da caixa de ferramentas e isso criaria tudo isso para mim. Sei que este é um exemplo simples, mas usar a ligação de dados é a chave.

Nos últimos meses, falamos sobre o conjunto de dados fortemente tipado, como usá-lo e onde ele interage com outros controles. Conjuntos de dados, como eles funcionam em relação a fontes de ligação, adaptadores e visualizações de grade de dados. Depois de entregar este projeto, eu esperava perguntas sobre como implementá-las, pois para mim essa é a maneira de fazê-lo. O que aconteceu a seguir simplesmente me surpreende:

Uma instância de um adaptador do conjunto de dados fortemente tipado foi criada no evento de ativação do formulário, uma tabela foi criada e preenchida com dados. Em seguida, foi feito um loop para adicionar linhas manualmente a uma caixa de listagem dessa tabela. Por fim, uma variável foi mantida para fazer pesquisas para descobrir qual ID o registro era para atualizações, se necessário.

Como eles modificam os registros que você pergunta? Essa foi minha primeira pergunta também. Você não vai acreditar como é simples, basta clicar duas vezes e digitar em um prompt pop-up o novo valor para alterá-lo. Como operador de entrada de dados, todos os pop-ups modais me deixariam absolutamente louco. A solução final excede 100 linhas de código que devem ser mantidas.

Então, minha preocupação é que nada disso esteja afundando ... o departamento só é permitido 20 horas por semana do seu tempo. Até a semana passada, recebíamos apenas 4-5 horas por semana, se eu tiver sorte. Na semana passada, mais ou menos, tive a sorte de conseguir 10.


Questão

O QUE EU FAÇO?!

Ainda tenho 4 semanas para sair e eles 'suportam' completamente este aplicativo. Adoro esse trabalho e a oportunidade que me deu, mas é hora de abrir minhas asas e encontrar algo novo. Não estou de forma alguma convencido de que eles estão prontos para assumir o controle.

Eu sinto que a substituição tem a capacidade técnica de 'descobrir', mas em vez de aprender, eles apenas escrevem código para fazer tudo isso manualmente. Se a substituição quiser codificar de forma diferente no final, contanto que funcione, eu estou bem com isso, por mais horripilante que pareça. No entanto, para apoiar o que eu projetei, eles DEVEM entender como funciona e como eu usei os controles e a estrutura para fazer a mágica acontecer.

Este projeto possui cerca de 40 formulários, um banco de dados com mais de 30 tabelas ímpares, gatilhos e procedimentos armazenados. Relaciona trabalho a faturas, contratos a projeções ... não é tão simples como era há três anos atrás, quando iniciei este projeto, e o departamento agora está em uma posição em que eles não podem sobreviver sem ele.

Como no mundo posso realizar uma das seguintes ações:

  • Aplicar padrões ou entendimento no design de constantes quando o gerente do departamento continuar dizendo que eles podem fazer isso da maneira que desejarem
  • Encontre uma maneira de envolver a substituição no aprendizado ativo da estrutura e do design do sistema que deve ser fornecido suporte para
  • Graciosamente informar sr. gerenciamento que de 5 a 9 horas por semana simplesmente não é tempo suficiente para aprender sobre o departamento, processos preexistentes, aplicativos que precisam ser suportados E determinar para onde vão as melhorias em potencial do sistema ...

Sim, eu sei que isso é uma parede de texto, obrigado pela leitura, mas simplesmente não sei o que devo fazer. Para mim, este trabalho é um monstro de referência e as coisas ficariam extremamente ruins se eu fosse embora e as coisas desmoronassem. Como eu manejo isso?


Esta não é uma questão de engenharia. Vote para fechar.
jason

11
Você está deixando um trabalho de programação pago, para poder estudar? Esta é sua idéia de melhorar como programador? Pesquise neste site para obter conselhos de certificação.
JeffO 28/06

Não percebi que minha postagem deixou essa impressão. Não, eu não estou estudando para nenhum teste, eu já fiz o exame por conta própria, estou simplesmente saindo para uma oportunidade melhor com outra empresa. Em termos de substituição da minha função, eu apenas tenho conhecimento que sei que a substituição não tem e que me preocupa. Sugeri que os aceitassem também desde que a empresa reembolsasse o treinamento, mas parece haver uma "falta de interesse" nesse sentido. Não tenho certeza como motivá-los ...
Mohgeroth

11
"Alguns milhares" de funcionários é uma pequena empresa?
22611 Mike Baranczak

3
Conjuntos de dados / TableAdapters são códigos não oficiais herdados. Existe uma variedade estonteante de opções de acesso a dados - Linq to Entities, Linq to SQL, NHibernate, Subsônico, Castle ActiveRecord, LLBL, Lightspeed, a lista continua e continua ... se você está tentando ensinar sobre boas práticas , não os arraste para baixo com um DAL de menor denominador comum.
Aaronaught

Respostas:


14

Louvo o seu desejo de ajudar a empresa, mas honestamente, se a substituição pode ou não fazer o trabalho não é problema seu e não refletirá sobre você. Faça o seu melhor, documente o que puder e, quando sair, esqueça-o e siga em frente. Não quebre as costas para uma empresa que, tenho certeza, não se importa tanto com você quanto parece se importar com elas.


3
+1. O dado foi lançado no dia em que eles decidiram contratar alguém recém-formado com aparentemente zero experiência em .NET, para ser o único desenvolvedor responsável por um sistema de faturamento .NET. Não é problema seu. Como Wayne diz, faça o seu melhor, documente o que puder e depois vá. Se tudo desmoronar, eles podem aprender a lição de que precisam para contratar pessoas qualificadas, não importa quão barato seja contratar alguém que não pode fazer o trabalho.
Carson63000

12

Documente o máximo que puder e, quando sair, não se preocupe.


9

Converse com seu gerente (ou com quem será o gerente depois da sua licença) e compartilhe suas preocupações com eles. Se eles não ouvirem, tente conversar com as partes interessadas que serão afetadas se a sua substituição danificar as coisas depois que você sair.

Faça o que puder antes de sair, mas lembre-se de que depois de sair, não é problema seu.


2

Qualquer empresa digna de receber feedback terá um processo de entrevista de saída apropriado. Para ser eficaz, isso geralmente é presidido por alguém do RH, dando a você a oportunidade de falar livremente. Este é o lugar para apresentar seus problemas, se você se sentir tão inclinado. Se eles não tiverem um, talvez sugira que deveriam. Caso contrário, envie todas as suas preocupações / sugestões técnicas em um e-mail para o seu gerente de linha antes de sair.

O ponto principal é que você decidiu deixar a empresa e, portanto, escolheu um caminho diferente. Portanto, o caminho deles não é mais sua preocupação.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.