
No estágio atual de desenvolvimento do desenvolvimento de software industrial, pode-se observar uma variedade de funções de produção. Seu número está crescendo, a classificação está se tornando mais complicada a cada ano e, é claro, os processos de seleção de especialistas e trabalho com recursos humanos estão se tornando mais complicados. A tecnologia da informação (TI) é uma área de escassez de mão de obra e equipe altamente qualificada. Aqui, o processo de desenvolvimento da equipe, a necessidade de trabalho sistemático com recursos humanos são muito mais eficazes do que a seleção direta usando recursos da Internet.
O artigo discute questões relevantes para o pessoal que trabalha com empresas de TI: relacionamentos causais na evolução das funções de produção, as consequências da interpretação incorreta do conteúdo das funções do pessoal que trabalha em geral, além de possíveis opções para aumentar a eficiência da seleção de especialistas.
Produção de TI para não iniciados
Quem é quem em TI é um tópico para discussão em vários locais. Existe tanto quanto toda a indústria de TI, ou seja, desde o surgimento no mercado consumidor das primeiras empresas de desenvolvimento de software no início dos anos 90 do século passado. E pelo mesmo período de tempo, não há uma visão única sobre esse assunto, o que cria dificuldades e reduz a eficácia do trabalho do pessoal. Vamos tentar descobrir.
Para mim, o tópico das funções de produção no setor de TI se tornou relevante e interessante desde que entrei para a empresa de TI. Passei muito tempo e energia nervosa tentando descobrir o processo de produção. Esses custos excederam minhas expectativas e os custos de adaptação a processos em outras áreas: educação, produção de material, pequenas empresas. Entendi que os processos são complexos e incomuns, pois, em geral, uma pessoa é mais adaptada ao mundo material do que ao virtual. Mas havia resistência intuitiva: parecia que algo estava errado aqui, não deveria ser assim. O processo de adaptação levou provavelmente um ano, o que, no meu entender, é simplesmente uma quantidade cósmica. Como resultado, tive uma ideia clara das principais funções na produção de TI.
Atualmente, continuo trabalhando neste tópico, mas em um nível diferente. No papel de chefe do centro de desenvolvimento de uma empresa de TI, muitas vezes tenho que me comunicar com estudantes, professores universitários, candidatos, crianças em idade escolar e outras pessoas que desejam participar da criação de um produto de TI para promover a marca do empregador no mercado de trabalho de um novo território (Yaroslavl). Essa comunicação não é fácil devido à baixa conscientização dos interlocutores sobre como o processo de desenvolvimento de software (software) é organizado e, como resultado, à falta de entendimento sobre o assunto da conversa. Após 5 a 10 minutos de diálogo, você para de receber feedback e começa a se sentir um estrangeiro, cujo discurso requer tradução. Como regra, existe alguém entre os interlocutores que traça uma linha no diálogo e exprime o mito popular dos anos 90: "De qualquer forma, todo pessoal de TI é programador". As fontes do mito são as seguintes:
- O setor de TI está se desenvolvendo rapidamente, nessas condições todos os significados e princípios fundamentais estão no estágio de formação;
- diante da incerteza, é difícil existir, portanto, uma pessoa tenta facilitar sua compreensão do desconhecido criando mitos;
- uma pessoa está mais acostumada à percepção do mundo material do que o virtual e, portanto, é difícil para ela definir conceitos que estão além de sua percepção.
As tentativas de combater esse mito às vezes se assemelham a uma luta contra moinhos de vento, uma vez que existem vários aspectos do problema que precisam ser abordados. O especialista em recursos humanos precisa, em primeiro lugar, ter uma imagem clara das funções de produção na empresa de TI em uma personificação ideal e real; em segundo lugar, entender como e quando o recurso interno da empresa pode ser usado com mais eficiência; e, em terceiro lugar, quais métodos reais ajudarão a aumentar conscientização dos participantes do mercado de trabalho e contribuirá para o desenvolvimento da marca do empregador. Vamos considerar esses aspectos em mais detalhes.
Ciclo de vida do software como base para funções de produção
Não é segredo que, em geral, todas as funções de produção em qualquer empresa de TI têm como fonte o ciclo de vida do software. Portanto, se definirmos a tarefa conceitual de concordar com uma percepção comum desse problema em todo o setor de TI, devemos confiar no ciclo de vida do software como a base semântica aceita e sem ambiguidade. A discussão de opções específicas para implementar a questão das funções de produção está no plano de nossa atitude criativa em relação ao ciclo de vida do software.
Portanto, consideraremos as etapas que o ciclo de vida do software inclui, usando o exemplo da metodologia RUP. São links bem formados em termos de conteúdo e terminologia. O processo de produção sempre e em qualquer lugar começa com a modelagem de negócios e a formação de requisitos e termina (condicionalmente, é claro) com a consulta do usuário e melhorias de software com base nos desejos dos usuários.

Se você fizer uma excursão histórica no final do século passado (como você sabe, esse foi um período de "automação de ilhas"), poderá ver que o programador estava envolvido em todo o processo de criação do software. Aqui estão as raízes do mito de que todo especialista em TI é um programador.
Com a complexidade dos processos de produção, o surgimento de plataformas integradas e a transição para a automação integrada de áreas, com a reengenharia dos processos de negócios, torna-se inevitável o surgimento de papéis especializados associados às etapas do ciclo de vida. É assim que um analista, testador e especialista em suporte técnico aparecem.
Diversidade de cargos como exemplo do papel do analista
O analista (ele também é engenheiro-analista, também é diretor, metodologista, analista de negócios, analista de sistemas etc.) ajuda a "fazer amizade" com tarefas e tecnologias de negócios para sua implementação. Descrição da declaração do problema para o desenvolvedor - é assim que a principal função de um analista abstrato pode ser caracterizada. Ele atua como um elo entre o cliente e o desenvolvedor nos processos de formação de requisitos, análise e design de software. Em condições reais de produção, a lista de funções de um analista é determinada pelo método de organização da produção, pela qualificação de um especialista e pelas especificidades de uma área de assunto simulada.

Alguns analistas estão mais próximos do cliente. Estes são analistas de negócios. Eles compreendem profundamente os processos de negócios da área e são especialistas em processos automatizados. A presença de tais especialistas na equipe da empresa é muito importante, especialmente ao automatizar áreas temáticas metodologicamente complexas. Em particular, para nós, como montadoras do processo orçamentário do estado, é simplesmente necessário que os analistas sejam especialistas no assunto. São funcionários altamente qualificados, com boa educação financeira e econômica e experiência em instituições financeiras, de preferência no papel de especialistas líderes. Experiência de trabalho não na área de TI, mas na área de assunto é extremamente importante.
Outra parte dos analistas está mais próxima dos desenvolvedores. Estes são analistas de sistemas. Sua principal tarefa é a identificação, sistematização e análise dos requisitos do cliente quanto à possibilidade de satisfação, preparação de tarefas técnicas e descrição das declarações do problema. Eles entendem não apenas os processos de negócios, mas também as tecnologias da informação, conhecem bem os recursos do software entregue ao cliente, possuem habilidades de design e, portanto, entendem a melhor maneira de transmitir os interesses do cliente ao desenvolvedor. Esses funcionários devem ter formação em TIC e mentalidade técnica e de engenharia, de preferência com experiência em TI. Ao selecionar esses especialistas, uma vantagem clara será a disponibilidade de habilidades de design usando ferramentas modernas.

Outro tipo de analista é o redator técnico. Eles estão envolvidos na documentação no âmbito dos processos de desenvolvimento de software, preparam manuais de usuário e administrador, instruções tecnológicas, vídeos de treinamento etc. Sua principal tarefa é poder transmitir informações sobre o programa aos usuários e outras partes interessadas, descrever coisas tecnicamente complexas de forma concisa e clara. Na maioria das vezes, os escritores técnicos são fluentes em russo, com formação técnica e espírito analítico. Para esses especialistas, as mais importantes são as habilidades de compilar textos técnicos claros, competentes e detalhados, de acordo com as normas, bem como o conhecimento e a posse de ferramentas de documentação.
Assim, vemos o mesmo papel (e, a propósito, uma posição na lista de funcionários) - um analista, mas em suas várias encarnações concretas e aplicadas. A busca de especialistas para cada um deles tem características próprias. É importante saber que esses tipos de analistas devem possuir habilidades e conhecimentos que geralmente são incompatíveis em uma pessoa. Um é humanista, inclinado ao trabalho analítico com grandes volumes de documentos de texto, com discurso e sociabilidade desenvolvidos, o outro é um "técnico" com pensamento de engenharia e interesses no campo de TI.
Tirar de lado ou crescer?
Para um grande representante do setor de TI, a eficácia da seleção direta dos recursos da Internet diminui à medida que os projetos crescem. Isso acontece, principalmente, pelos seguintes motivos: é impossível se adaptar rapidamente a processos complexos dentro da empresa, a velocidade de desenvolvimento de ferramentas específicas é menor que a velocidade de desenvolvimento do projeto. Portanto, é importante que um especialista em RH saiba não apenas quem procurar de fora, mas também como usar os recursos internos da empresa, de quem e como fazer crescer um especialista.
A experiência é muito importante para analistas de negócios dentro dos processos reais da área de estudo, portanto, sua seleção "de fora" é mais eficaz do que crescer dentro da empresa. Ao mesmo tempo, é importante que o especialista em RH conheça a lista de organizações que podem ser as fontes desse recurso de pessoal e, ao selecionar, concentre-se em encontrar um currículo a partir delas.
Para fechar vagas como analista de sistemas e arquiteto de software, pelo contrário, o processo de treinamento dentro da empresa é de grande importância. Esses especialistas devem ser formados no ambiente de trabalho atual e nas especificidades de uma organização específica. Os analistas de sistema são desenvolvidos por analistas de negócios, redatores técnicos e engenheiros de suporte técnico. Arquiteto de software (arquiteto de sistema) - dos designers (System Designer) e desenvolvedores de software (desenvolvedor de software) à medida que adquirem experiência e expandem seus horizontes. Essa circunstância permite que o especialista em RH use efetivamente os recursos internos da empresa.
A interseção, unificação e evolução dos papéis de produção
Há uma pergunta mais difícil do ponto de vista da implementação no processo de produção - o estabelecimento de limites claros entre as funções. À primeira vista, pode parecer que tudo está óbvio: a implementação terminou, eles assinaram documentos para colocar o software em operação comercial e transferiram tudo para o suporte técnico. Isso mesmo, mas muitas vezes há situações em que o cliente, por hábito, mantendo contato próximo com o analista e vendo um salva-vidas nele, continua a se comunicar ativamente com ele, apesar do fato de o sistema já ter sido implementado e a fase de suporte ser formalmente . No entanto, do ponto de vista do cliente, que é melhor e mais rápido que o analista que definiu a tarefa com ele, responderá a perguntas sobre como trabalhar com o sistema. E aqui surge a questão da duplicação parcial dos papéis de engenheiro e analista de suporte técnico. Com o tempo, tudo está melhorando, o cliente se acostuma a se comunicar com o serviço de suporte técnico, mas no início da operação do software, uma “transição interna” nem sempre é possível sem estresse de ambos os lados.

A interseção das funções do analista e do engenheiro de suporte técnico também ocorre quando o fluxo de requisitos de desenvolvimento está dentro da estrutura da fase de suporte. Voltando ao ciclo de vida do software, observamos uma discrepância entre as condições reais de produção e as configurações formais de que a análise dos requisitos e a declaração do problema podem ser realizadas exclusivamente pelo analista. O especialista em RH certamente precisa entender a imagem ideal dos papéis dentro do ciclo de vida do software; eles têm limites claros. Mas, ao mesmo tempo, deve-se ter em mente que a interseção é possível. Ao avaliar o conhecimento e as habilidades do candidato, você deve prestar atenção à presença de experiência relacionada, ou seja, ao procurar engenheiros de suporte técnico, é possível considerar candidatos com a experiência de um analista e vice-versa.
Além da interseção, uma combinação de funções de produção é frequentemente observada. Por exemplo, um analista de negócios e um escritor técnico podem existir em uma pessoa. A presença de um arquiteto de software (arquiteto de software) é obrigatória no grande desenvolvimento industrial, enquanto projetos muito pequenos podem ficar sem esse papel: as funções do arquiteto são executadas pelos desenvolvedores (desenvolvedor de software).
A mudança de períodos históricos nas abordagens e tecnologias de desenvolvimento inevitavelmente leva ao fato de que o ciclo de vida do software também está evoluindo. Globalmente, é claro, seus principais estágios permanecem inalterados, mas estão sendo detalhados. Por exemplo, com a transição para soluções baseadas na Web e o crescimento dos recursos de configuração remota, o papel de um especialista em configuração de software apareceu. No estágio histórico inicial, eram implementadores, ou seja, engenheiros que passavam a maior parte do tempo trabalhando nos locais de trabalho dos clientes. O aumento do volume e da complexidade do software levou ao papel de arquiteto de software. Os requisitos para acelerar o lançamento de versões e melhorar a qualidade do software contribuíram para o desenvolvimento de testes automatizados e o surgimento de uma nova função - engenheiro de controle de qualidade (engenheiro de garantia da qualidade) etc. A evolução dos papéis em todas as etapas da organização do processo de produção está significativamente associada ao desenvolvimento de métodos, tecnologias e ferramentas.
Assim, examinamos alguns pontos interessantes em relação à distribuição das funções de produção na empresa de software no contexto do ciclo de vida do software. Obviamente, essa é uma visão interna específica de cada empresa. Para todos nós, como participantes do mercado de trabalho da indústria de TI e responsáveis pela promoção da marca do empregador, um olhar de fora será especialmente importante. E aqui existe um grande problema não apenas na busca de significados, mas também na transmissão dessas informações ao público-alvo.
O que há de ruim no zoológico de postagens de TI?
A confusão na mente de especialistas em RH, organizadores da produção e a variedade de abordagens levam a uma variedade muito ampla, diretamente ao "zoológico" das postagens de TI. A experiência de entrevistas e apenas contatos profissionais mostra que muitas vezes as pessoas não têm um entendimento inequívoco da carga semântica que deve seguir o título do trabalho. Por exemplo, em nossa organização, posições que incluem o conceito de "analista de engenharia" sugerem que este é um gerenciador de tarefas. No entanto, acontece que nem sempre é esse o caso: existem organizações de desenvolvimento em que o analista-engenheiro é um implementador. Um entendimento completamente diferente, concorda?
Em primeiro lugar, o “zoológico” dos postos de TI reduz, sem dúvida, a eficácia do recrutamento de pessoal. Ao desenvolver e promover sua marca, todo empregador deseja transmitir brevemente todos os significados que existem em sua produção. E se ele próprio muitas vezes não consegue dizer claramente quem é quem, é claro, transmitirá incerteza ao ambiente externo.
Em segundo lugar, o "zoológico" das postagens de TI cria enormes problemas no treinamento e desenvolvimento da equipe de TI. Toda empresa de TI séria que visa criar e desenvolver recursos humanos, em vez de apenas "ordenhar" locais de trabalho, mais cedo ou mais tarde, encontra a necessidade de interagir com instituições de ensino. Para pessoal de TI altamente qualificado, este é um segmento de universidades e o melhor, pelo menos no ranking TOP-100.
O problema da integração com as universidades na construção de um processo contínuo de treinamento de especialistas em TI é aproximadamente metade da falta de entendimento entre as universidades de quem é quem dentro da empresa de TI. Eles têm uma compreensão muito superficial disso. Como regra, as universidades têm várias especialidades com a palavra "informática" em seus nomes, e muitas vezes acontece que, quando realizam uma campanha de admissão, confiam na tese de que todas as especialidades são essencialmente a mesma coisa. E parece o mesmo que se você confiar no mito popular de que todos os especialistas em TI são programadores.
A experiência de nossa estreita cooperação com as universidades mostra que a especialidade “Informática Aplicada (por setor)” nos fornece pessoal para os departamentos de metodologia e suporte técnico, mas não para o desenvolvimento. Enquanto a Informática Fundamental e a Engenharia de Software estão preparando um excelente recurso humano para desenvolvedores. Para não direcionar o candidato inicialmente por um caminho inadequado para ele, é necessário "dissipar a névoa" que envolve a produção de TI.
É possível levar tudo para um denominador comum?
É possível unificar as funções de produção e chegar a um entendimento comum delas, de dentro e de fora da empresa?
Obviamente, é possível e necessário, porque a experiência coletiva acumulada de todos os desenvolvedores corporativos demonstra a presença de conceitos comuns e unificadores da organização do processo de produção. Isso é uma conseqüência do fato de existir um conceito inequivocamente interpretado do ciclo de vida do software, e as novas funções de produção que aparecem (DataScientist, QA-Engineer, MachineLearning Engineer etc.) são o resultado do aprimoramento e desenvolvimento do ciclo de vida do software, como tal, ocorrendo com melhoria de tecnologias e ferramentas, bem como o desenvolvimento e consolidação de tarefas de negócios.
Ao mesmo tempo, é difícil unificar as funções de produção, porque a TI é uma das indústrias mais jovens e em expansão. De certa forma, esse é o caos do qual o universo surgiu. , – , . , – «»- , , «»-, . , , , , . , , , , .
-
, HR- -.
-, - , : , , – .
-, HR- . , . : , , . , , , .
-, : , , , , , .
-, , – , . HR- , , : , , , , , .
, , – , , . , , , -, « », . -, .
, : .