Sobre o serviço
TraduzidoEu mantenho sistemas PL/I antigos em funcionamento e os desenvolvo ainda mais. Por mais de quinze anos, apoiei, refatorei e portei programas de negócios em lote e online em PL/I de mainframe, então, quando um lote noturno falha com uma exceção de dados às três da manhã, sei exatamente onde olhar. Todos os dias trabalho em z/OS: lendo e corrigindo código-fonte no ISPF, vinculando trabalhos através do JCL, analisando falhas através do SYSOUT, dumps e códigos de conclusão, até que a causa fique clara. Sistemas reais são quase sempre mistos, então integro cuidadosamente PL/I com módulos COBOL através de convenções de chamada comuns e copybooks, e acesso a dados relacionais através de SQL embutido no DB2, ajustando etapas de pré-compilação e vinculação para que os planos permaneçam estáveis sob carga. Tarefas típicas: eliminar abends de produção, erros de conversão de campos decimais e de imagem, deslocamentos de layout de registro; quebrar programas monolíticos em procedimentos testáveis; documentar lógica não documentada; portar programas entre versões do z/OS ou para plataformas distribuídas, preservando o comportamento de negócios byte por byte. Escrevo harnesses de regressão com base em entradas fixas e saídas esperadas para que uma correção não quebre silenciosamente fluxos de dados adjacentes. Na saída, você recebe um arquivo de código-fonte revisado, JCL e cartões de vinculação atualizados, uma breve nota de projeto, prova de testes antes e depois, e um chamado para entrega. Trabalho dentro do seu controle de mudanças, não toco na produção sem um plano de reversão, e deixo o código mais legível do que estava. Nomeie um abend, dataset ou objetivo de modernização — eu darei uma estimativa honesta do escopo.