29 junho, 2011

Trabalhando com Engenharia de Software

Bom, estava faltando um post para falar sobre Engenharia de Software. =) 

Segundo a Wikipédia, "Engenharia de software é uma área do conhecimento da computação voltada para a especificação, desenvolvimento e manutenção de sistemas de software aplicando tecnologias e práticas de gerência de projetos e outras disciplinas, objetivando organização, produtividade e qualidade."



Resumidamente, é atuar em qualquer especialidade dentro de um projeto de desenvolvimento de software (corrijam-me se discordarem). Então, uma vez que você esteja interessado em atuar como Engenheiro de Software, você deve ter em mente "o que você quer ser quando crescer", e trabalhar para melhorar suas qualificações. Eis alguns exemplos de profissões ligadas à esta área:

Desenvolvedor de Software (Programador), Analista de Sistemas, Analista de Negócios, Analista de Testes, Testador, Arquiteto de Software, DBA (Database Administrator), Gerente de Projetos, Suporte, e por ai vai. 

E ainda, dentro de cada uma destas profissões, existem diversos seguimentos a se tomar, e que cada vez mais exigem especialização, por exemplo:

Um desenvolvedor pode ser especialista em uma ou mais linguagens de programação (Java, .Net, PHP, etc), um Analista de Sistemas também pode se especializar em uma determinada linguagem, um Testador deve conhecer diversas técnicas de Testes de software, desde a manual até a automatizada, tendo domínio sobre diversas ferramentas que o auxiliem. Enfim, os caminhos são diversos, e ainda trataremos de cada um deles com mais calma no blog.

O bacana, é que se você resolver trocar de área, você não perde seu conhecimento, pelo contrário!! Tudo o que se aprende em uma determinada área de conhecimento é perfeitamente aplicável nas demais, seja teoricamente, seja auxiliando em uma resolução de problema, ou em uma identificação de bug.

Sem falar que a Engenharia de Software está em constante expansão, e ainda faltam profissionais qualificados no mercado. Ah! E não basta ser bom somente em tecnologia não... sem inglês hoje, muitas portas acabam se fechando. O mercado internacional está de olho nos profissionais do Brasil, então aproveite! #ficaadica

27 junho, 2011

O que nos motiva?

Há algum tempo assisti à este vídeo que fala "que o que de fato nos motiva é o que nos leva à ter sucesso nos empreendimentos em que trabalhamos", e percebi que esta regra é válida tanto para a vida profissional quanto para a vida pessoal. O autor Simon Sinek, escreveu um livro sobre o assunto, e não vejo a hora de começar a leitura. Assista ao vídeo e pense no assunto.

21 junho, 2011

Harry Potter e o CHA

Dia desses, estava lendo "Harry Potter e o Cálice de Fogo", e hoje, após ler este artigo (que a propósito me inspirou a ler este outro) sobre o CHA (Conhecimento, Habilidade e Atitude), percebi como o bruxinho o aplicou para executar uma tarefa no Campeonato Tribuxo.
Basicamente, a tarefa era enfrentar um dragão e conseguir capturar um ovo de ouro que estava em seu ninho, saindo vivo da batalha. Para isso, Harry contou com a ajuda de seus amigos, que lhe mostraram como ele poderia utilizar estas três características para garantir a vitória. Mas a prova era um mistério para os participantes do torneio.

Primeiramente, com a ajuda de um de seus amigos, ele descobriu que a prova seria com dragões, então pode estudar seu comportamento, e aumentar seu Conhecimento sobre o assunto, para descobrir como enfrentá-los.

"Explore seus pontos fortes", foi a segunda ajuda que ele recebeu. Seu professor o estimulou a descobrir quais eram suas Habilidades mais fortes, para que estas fossem usadas a seu favor no momento certo.

Todos possuem pontos fortes, mas nem todos sabem como utilizá-los. Foi aí que Harry teve que ter Atitude e, com o apoio de sua amiga, descobrir como unir o CHA no momento do torneio.

O resultado foi a vitória, usando magia, montado em sua vassoura, voando como se estivesse em um jogo de Quadribol, aproveitando sua excelente habilidade de pilotar, para conseguir pegar o ovo de ouro.

Diariamente, nos deparamos com situações em que temos que usar de diversas habilidades para resolver problemas, e muitas vezes esquecemos de "sair da caixa" para procurar uma solução na qual tenhamos pleno domínio. E assim como Harry, podemos precisar da ajuda de nossos amigos e colegas de trabalho para conseguir enxergar a saída.

No CHA, o C é o conhecimento que a pessoa tem sobre determinado assunto, podem ser os conhecimentos adquiridos no decorrer da nossa vida, em qualquer área, é o saber; O H é a habilidade de se produzir resultados com o conhecimento que se tem, é o saber fazer (Know-How); E o A é a atitude, a pró-atividade, o querer fazer.

O uso do CHA, parece bastante óbvio, mas é impressionante como estas três características utilizadas juntas nos fazem enxergar um conjunto de soluções muito maiores na hora de solucionar problemas, e isoladas não chegam a lugar algum.

Um primeiro passo, para desenvolver o CHA, é disseminar o que se sabe entre as pessoas que estão próximas. Imagine, em seu time de desenvolvimento, se você tem conhecimento em um determinado assunto, e não sabe como resolver um problema, mas exterioriza esta situação, provavelmente alguém próximo já poderá ter passado por uma situação parecida e poderá lhe dar dicas ou ainda lhe ensinar como resolver. 

O ambiente colaborativo estimula cada vez mais o desenvolvimento do CHA nos profissionais, afinal, ninguém nasce sabendo tudo e compartilhar informações hoje em dia está em alta.


18 junho, 2011

O que é Business Analysis?

Hoje em dia muito se fala sobre Análise de Negócios (Business Analysis) e as empresas cada vez mais buscam Analistas de Negócios, pois antes de promover qualquer tipo de produto no mercado, é preciso conhecimento sobre o mesmo. Você precisa conhecer o que está vendendo, o motivo que o leva a vender e como irá realizar a venda, para que seu produto não seja um fracasso.


Achei muito boa a definição sobre as atividades do Analista de Negócios apresentada na Wikipédia:
Analista de Negócios busca as melhores oportunidades de negócio, analisa tendências, cria novos produtos, recria produtos existentes, está sempre preocupado em encontrar novos caminhos para a empresa. Ele está em permanente contato com o cliente e os donos do negócio.
O analista de negócios (...), vem de maneira a complementar o analista de processos e o analista de sistemas. Os três tipos de analistas diferentes não devem ser confundidos entre si, não são mutuamente exclusivos e eles podem se complementar naquilo que têm de melhor. Fundamentalmente, esta função está atrelada ao conhecimento e facilidade em lidar com negócios, assim como descrita acima, mas muito focada nos recursos de TI e de Sistemas (em toda sua extensão) para poder prover soluções exequíveis para um atingir um determinado objetivo.”
Basicamente, o Analista de Negócios é a pessoa que irá identificar e propor soluções para as necessidades de negócio de um determinado seguimento. Então, se sua empresa precisa de um novo software, o analista de negócios irá realizar entrevistas, para entender o que você faz, como você faz o seu trabalho, e como  você espera que o software possa lhe ajudar, para que juntos, o Analista e o Cliente, cheguem a um acordo sobre a melhor solução possível.

Mas não é uma tarefa exclusiva do Analista de Negócios conhecer e identificar estas melhorias.
Se você trabalha em um time de desenvolvimento de software, e aqui vamos imaginar um Analista de Negócios, um Analista de Sistemas, um Desenvolvedor e um Analista de Testes, quem você acha de deve reter o conhecimento de negócio? A resposta é simples; o time todo!
Ok, nem sempre é possível levar o time completo para uma entrevista, e muitas vezes não é necessário que isso ocorra. Mas é imprescindível que o conhecimento de negócio seja disseminado de forma clara ao time inteiro, seja por meio de reuniões, lista de regras, ou qualquer outra forma que se julgue adequada para que todos estejam alinhados em relação ao assunto, e o desenvolvimento do projeto ocorra com sucesso.