-
Notifications
You must be signed in to change notification settings - Fork 13
Planejamento
Espaço reservado para planejar e discutir novos desenvolvimentos.
Toda vaga busca uma ou mais pessoas para desempenhar uma ou mais atividades dentro da entidade. Cada atividade tem um propósito dentro de um contexto maior, seja ele um projeto, uma iniciativa, uma solução (que nome genérico poderíamos dar a isso??), algo que vai de alguma forma contribuir direta ou indiretamente para que a entidade cumpra sua missão, entregando algum produto, serviço, benefício ou valor à sociedade. E cada projeto ou iniciativa pode ter caráter pontual ou contínuo.
Um dos serviços oferecidos pelo Voluntários é o "Clipping de notícias". Ou seja, quem se interessa por voluntariado pode nos acompanhar pelas redes sociais e ter acesso a notícias sobre voluntariado. Essa iniciativa envolve hoje as seguintes atividades:
flowchart TD;
prospeccao("Prospecção de notícias");
triagem("Triagem");
resumo("Elaboração de resumo");
arte("Trabalho de arte/design");
revisao("Revisão final");
postagem("Agendamento & postagem");
prospeccao ----> triagem;
triagem ----> resumo;
resumo ----> arte;
resumo ----> revisao;
arte ----> revisao;
revisao ----> postagem
Para cada atividade podemos pensar nos seguintes atributos:
- Nome
- Descrição (o que deve ser feito)
- Instruções/Orientações
- Quantidade de pessoas necessárias
- Requisitos (habilidades?) necessários para desempenhar a atividade
- Outras características desejáveis para desempenhar a atividade
- Local de trabalho (remoto ou não)
- Áreas de trabalho normalmente relacionadas ao desempenho deste tipo de atividade
Neste contexto, o que seria uma "vaga"? A vaga nasceria de uma necessidade de ter mais pessoas desempenhando determinada atividade. Portanto não haveria um modelo (tabela) "vaga". Poderíamos ter sim um modelo "Processo seletivo", relacionado a uma ou mais atividades, sendo que cada atividade poderia gerar mais de um processo seletivo ao longo do tempo. Inclusive muitos atributos do processo seletivo poderiam ser tirados de atributos da atividade (requisitos, áreas de trabalho associadas, o que será feito, etc.). Um detalhe a ser observado aqui é que numa grande empresa pode-se imaginar um grande processo seletivo envolvendo várias vagas, mas aqui o processo seletivo está sendo pensado como algo "por vaga". Ou seja, se uma entidade quiser selecionar candidatos para várias vagas, deverá abrir um processo seletivo para cada uma.
Entretanto, para não complicar demasiadamente o desenvolvimento e também não exigir que as entidades façam todo um planejamento de atividades para poder divulgar uma vaga de trabalho voluntário, cada processo seletivo também poderia ser criado sem vínculo com um contexto de atividades relacionadas. Ou seja, tanto as iniciativas/atividades quanto os processos seletivos podem ter menus independentes no sistema, com vínculo opcional entre eles no futuro.
flowchart TD;
Entidade -- 1-N --> Projeto;
Projeto -- 1-N --> Atividade;
Atividade -- 1-Na --> DependenciaEntreAtividades;
Atividade -- 1-Nb --> DependenciaEntreAtividades;
Atividade -- 1-N --> AreaDeTrabalhoDeAtividade;
AreaTrabalho -- 1-N --> AreaDeTrabalhoDeAtividade;
Atividade -- 0-N --> ProcessoSeletivo
ProcessoSeletivo -- 1-N --> EtapaPrevistaEmProcessoSeletivo
Atividade -- 1-N --> AlocacaoRecursoHumanoEmAtividade
Voluntario -- 1-N --> AlocacaoRecursoHumanoEmAtividade
ProcessoSeletivo -- 1-N --> ParticipacaoEmProcessoSeletivo
Voluntario -- 1-N --> ParticipacaoEmProcessoSeletivo
ParticipacaoEmProcessoSeletivo -- 1-N --> ParticipacaoEmEtapaDeProcessoSeletivo
EtapaPrevistaEmProcessoSeletivo -- 1-N --> ParticipacaoEmEtapaDeProcessoSeletivo
Os atributos de processos seletivos devem ser suficientes para produzir um anúncio de vaga. Por outro lado, boa parte do gerenciamento do processo seletivo se dará por meio das etapas no processo seletivo. Estas em princípio não precisam aparecer para os voluntários (?). Uma questão importante é que uma entidade pode optar por gerenciar todo o processo seletivo fora do sistema - principalmente considerando que as vagas podem ser divulgadas em outros lugares, com inscrições chegando também de outros lugares.
Há que se considerar também que a única forma de medirmos o interesse em determinado processo seletivo é computando as inscrições. Assim, podemos pensar em não permitir links na descrição do processo seletivo, uma vez que os mesmos podem ser melhor especificados em etapas do processo seletivo.
flowchart TD;
em_elaboracao("em elaboração");
aguardando_aprovacao("aguardando aprovação");
aguardando_publicacao("aguardando publicação");
aberto_a_inscricoes("aberto a inscrições");
aguardando_selecao("aguardando seleção");
inexistente -- novo --> em_elaboracao;
em_elaboracao -- submetido --> aguardando_aprovacao;
em_elaboracao ---> cancelado;
aguardando_aprovacao -- aprovado com data de início passada --> aberto_a_inscricoes;
aguardando_aprovacao -- aprovado com data de início futura --> aguardando_publicacao;
aguardando_aprovacao ---> cancelado;
aguardando_publicacao -- data de início passada --> aberto_a_inscricoes;
aguardando_publicacao ---> cancelado;
aberto_a_inscricoes -- data limite passada --> aguardando_selecao;
aberto_a_inscricoes ---> cancelado;
aguardando_selecao -- seleção realizada --> concluído;
aberto_a_inscricoes -- seleção realizada sem data limite --> concluído;
aguardando_selecao ---> cancelado;
Dúvida: faz sentido incluir o estado "Pausado" em processo seletivo?
Ao cadastrar um processo seletivo, podemos pensar em exigir que ao menos uma etapa seja especificada, de forma que a entidade pelo menos envie um comunicado aos participantes explicando como será o processo seletivo. Por outro lado, se desejar, a entidade pode também configurar várias etapas dentro de um mesmo processo seletivo. Seguem alguns exemplos de como as entidades conduzem o processo seletivo de voluntários de acordo com as respostas a um formulário enviado a elas em setembro de 2023:
- Solicitamos o preenchimento de um formulário e fazemos a seleção com base nas respostas (duas entidades responderam assim).
- São selecionados em uma entrevista com avaliação das habilidades.
- Pedimos para ir conversar conosco e depois solicitamos o preenchimento de um formulário e fazemos a seleção com base nas respostas.
- Simplesmente chamamos todos os candidatos para apresentar e descrever o trabalho, e depois distribuímos as tarefas aos interessados.
- Preenchimento de ficha cadastral, agendamento de reunião coletiva para explicar o trabalho e formalizar o termo de cooperação voluntária.
- Fazemos uma pré-seleção com entrevista online (e-mail ou whats), depois agendamos uma conversa com a Diretoria da ONG e, dependendo do voluntário, com o gestor que será responsável pela supervisão.
- Preenchimento da ficha de cadastro, seguido de entrevista.
- Primeiro é feita uma pré-seleção com base nos currículos, e depois é feita uma entrevista com os candidatos selecionados.
- Solicitamos o preenchimento de um formulário e fazemos a seleção com base nas respostas e nos currículos, depois é feita uma entrevista com os candidatos selecionados.
- A primeira orientação é que venham conhecer a instituição e conversar com a administração. A partir desse contato, havendo de fato interesse por parte da pessoa, é feito um contrato e, aos poucos, a pessoa vai sendo integrada à instituição no desenvolvimento dos serviços propostos.
- Primeiro abrimos um formulário para inscrições de qualquer pessoa, independente da formação e experiência. Após esse processo de preenchimento, marcamos uma entrevista para conhecer a pessoa melhor e nesse momento, é feita uma avaliação da pessoa com opinião de 2 entrevistadores com base nas suas respostas da entrevista.
- Preenchimento de formulário fica disponível durante pequeno período que costuma ser de 3 dias. Sempre recebemos uma quantidade maior de inscritos se comparado a quantidade de vagas. O primeiro passo eu realizo pesquisas criminais de todos os inscritos. Excluo todas as pessoas com históricos negativos, seja por agressão, furto/roubo, ameaças, etc. Como estarei colocando voluntários dentro da casa dos outros (hospitais) onde não estarei acompanhando in loco, dou preferência para as pessoas que não possuem histórico criminais. O segundo passo eu procuro saber quem entre os inscritos são indicações de voluntários da ativa. Alguns voluntários sempre indicam familiares e amigos. O terceiro passo eu leio todas as respostas e busco aquelas em que a pessoas demonstraram real interesse nas ações. Em determinadas perguntas algumas pessoas só respondem com sim ou não. Dou preferência para aquelas que demonstram seu ponto de vista, demonstrando interesse em responder de acordo com aquilo que elas acreditam. O quarto passo é verificar a disponibilidade de acordo com a data das ações. Por exemplo, se estamos procurando por pessoas que tenham disponibilidade em realizar ações às tardes das terças, damos preferência para as pessoas que possuem esta disponibilidade.
- Uma pré seleção via CV. Depois de acordo com a expertise dos candidatos, fazemos convite pra que ele visite o setor. Por fim formalizamos o convite e acertos finais.
- Abrimos a inscrição, selecionamos os candidatos que melhor assemelham se ao perfil e convocamos para uma entrevista.
Por hora a ideia é ter os seguintes tipos de etapa em processo seletivo:
Trata-se apenas do envio de uma mensagem aos candidatos, seja para informar como será feito o processo seletivo, seja para solicitar a leitura ou visualização de conteúdos informativos, seja para agradecer a participação no processo seletivo.
Atributos envolvidos na configuração da etapa: mensagem
Atributos envolvidos na participação da etapa: realizada_em (data de envio da mensagem), abriu_mensagem
Num primeiro momento faremos o envio das mensagens por e-mail. Futuramente podemos utilizar nosso sistema próprio interno de mensagens a ser implementado. A detecção de abertura de mensagem pode ser feita da mesma forma que fazemos na recepção de entidades, com link customizado para imagem do logotipo do Voluntários (funcionará somente quando o leitor de e-mail carregar imagens) ou podemos incluir link explícito solicitando que seja clicado para indicar que a mensagem foi recebida e lida. Não trabalharemos com arquivos anexos - as entidades podem fazer upload de arquivos na nuvem e incluir links para eles.
Dúvidas: 1) como lidar com mensagens não entregues? (endereços que não existem mais, caixas postais cheias...) 2) oferecemos ou não a possibilidade de especificar o atributo "link" para que a entidade também consiga rastrear o clique em link de conteúdo na mensagem?
Seleção de candidatos com base em critérios especificados:
Atributos envolvidos na configuração da etapa: opcoes_avaliacao (ex: selecionado, não selecionado), opcoes_positivas (ex: selecionado)
Atributos envolvidos na participação da etapa: realizada_em (preenchimento automático), avaliacao (tem que ser uma das opcoes_avaliacao), anotacoes
Trata-se na verdade de um comunicado que inclui link para preenchimento de um formulário e triagem embutida (?). Se o formulário for do Google, podemos usar a API para detectar o preenchimento.
Atributos envolvidos na configuração da etapa: mensagem, link
Atributos envolvidos na participação da etapa: realizada_em (data de envio da mensagem), abriu_mensagem, clicou_no_link, link_resposta (quando o formulário for do Google e a gente conseguir obter o link da resposta via API)
Dúvidas: 1) devemos já embutir uma triagem, ou deixamos que ela seja configurada numa etapa posterior?
Realização de entrevista.
Atributos envolvidos na configuração da etapa: nenhum.
Atributos envolvidos na participação da etapa: realizada_em (preenchimento manual).
Dúvidas: 1) devemos já embutir uma triagem, ou deixamos que ela seja configurada numa etapa posterior? 2) como se dará a interação para agendamento da entrevista?
class Iniciativa(models.Model):
id = models.AutoField(primary_key=True)
entidade = models.ForeignKey(Entidade, on_delete=models.CASCADE)
titulo = models.CharField(u'Título', max_length=200)
descricao = models.TextField(u'Descrição', null=True, blank=True)
inicio = models.DateField(u'Data estimada de início', null=True, blank=True)
fim = models.DateField(u'Data estimada de término', null=True, blank=True)
# incluir máquina de estados com django-fsm e django-fsm-log? Estados: em elaboração, em andamento, encerrada.
# incluir noção de área/departamento de entidade? (Ex: iniciativas da área de TI, comunicação, etc.) Pensar melhor nisso..
E se algum dia quiserem usar uma ferramenta como essa mesclando trabalho voluntário com trabalho remunerado? Será que deveríamos associar a "alocação de recurso humano em atividade" com usuário ao invés de voluntário? Ou seria melhor manter assim, bastando que a pessoa remunerada cadastre um perfil de voluntário no sistema?
E se algum dia quisermos possibilitar projetos envolvendo mais de uma entidade??
Criar novo branch aqui no repositório principal para trabalhar nesse conjunto grande de alterações.- Criar um novo item no menu lateral interno da entidade chamado "Iniciativas" (ou projetos), com página própria exibindo uma lista de iniciativas cadastradas e com possibilidade de cadastro, edição e remoção de iniciativas (procurar seguir mesmo estilo do menu "termos de adesão").
- Permitir o cadastramento de atividades em cada projeto. Pensar na melhor forma de fazer isso... (possibilidade de usar o mermaid, assim como o github, para ter uma visão de diagrama das atividades).
Criar um novo item no menu lateral interno da entidade chamado "Processos seletivos", com página própria exibindo uma lista de processos seletivos cadastrados e com possibilidade de cadastro, edição e remoção de processos seletivos (procurar seguir mesmo estilo do menu "termos de adesão").Criar novo link na página de painel de controle para exibir processos seletivos aguardando aprovação, permitindo revisá-los e aprová-los.Criar um novo item no menu lateral interno dos voluntários chamado "Processos seletivos", com página própria exibindo uma lista de processos em que o voluntário se inscreveu.Alterar página da entidade para exibir processos seletivos em aberto.Pensar na melhor forma de gerenciar as inscrições em processos seletivos.Criar nova página para buscar processos seletivos no menu principal "Voluntários", permitindo que voluntários se inscrevam neles.- ...