Você viu nosso canal no youtube?

De vez em quando gravamos algumas palestras. Várias delas foram publicadas no nosso canal do Vimeo. Aí queríamos colocar alguns vídeos maiores e por outras restrições, criamos um canal no youtube para publicar as histórias. 

Então fica a dica do nosso novo canal no youtube

Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.

TTLabs Summit Q3/2012! Qual é o seu tempo? por @dwildt

Esta apresentação foi feita dentro do TTLabs Summit Q3/2012, que ocorreu no dia 14/set/2012 na Trevisan Tecnologia.

Você já parou para pensar onde vai todo o seu tempo? Conhece alguém que sempre reclama que não tem tempo para nada? E alguém que só reclama do emprego e não reflete como sua vida poderia ser diferente? Já pensou em viver seu tempo? Em definir um novo estilo de vida?    

Em resumo: #VivaSeuTempo  

Eu penso que se sei gerenciar meu tempo, saberei controlar melhor minha atuação no dia a dia profissional e pessoal. Isto vai ajudar meu time de trabalho e as iniciativas que faço parte.  

Esta palestra é originalmente um workshop de três horas. Fiz um esforço para apresentar a mesma em menos de 6mins. Consegui em 5min59segundos. 🙂  Busquei levantar algumas técnicas diferentes para apoiar o seu dia e ajudar a entender os impactos nas atividades que realizamos.    

Só que as técnicas são apoio, não o essencial. O importante é refletir. Ter um momento para gerar consciência do que você está fazendo com o seu tempo. E assim buscar entender se o direcionamento dele está adequado. Se está alinhado com o seu propósito e seu estilo de vida. A propósito, qual o seu propósito? E seu estilo de vida?  

Veja a apresentação no slideshare e o vídeo no youtube

Daniel Wildt trabalha com empresas e equipes ajudando na adoção de metodologias ágeis e melhoria das técnicas de engenharia de software. Sempre em busca de simplicidade e aprendizado. Ajudo pessoas a se tornarem melhores profissionais, equipes a crescerem através de melhoria contínua e produtos a serem formados. Sou CTO na Trevisan Tecnologia (http://www.trevisantecnologia.com.br), tenho um blog no http://danielwildt.com e posso ser visto no twitter @dwildt.

TTLabs Summit Q3/2012! Veja o lineup do dia!

Hoje pela manhã fizemos mais uma edição do TTLabs Summit, edição Q3/2012. Deixo aqui o lineup das apresentações que foram realizadas. Conforme formos processando slides e vídeos, iremos publicar novos posts a respeito! 

Palestras:

  1. Daniel Wildt Qual é o seu tempo?
  2. Maurício Sganderla Me formei e agora? Preparado para o mercado ou para academia?
  3. Elvírio Hans Qualidade em aplicações Android com Robotium
  4. Guilherme Elias Fazer Mais … Com menos … Porém Sempre!!
  5. Rafael Helm [DES]especialize-se!

Aguarde os próximos posts com slides e vídeos das palestras! 
E ainda depois do fim do Summit aproveitamos para gravar mais um podcast! Enquanto não chega o novo, vai ouvindo os que já temos gravados

Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.

 

Processos de seleção – como tratar um desenvolvedor?

A palavra aqui é feedback

Quando estamos contratando alguém, estamos criando uma relação. Entre a empresa e a pessoa que estamos conversando. Entre as pessoas que estão representando a empresa e a pessoa que está se candidatando. É um processo. Se der tudo certo, você tem uma pessoa nova na sua equipe. Se não der certo, você passou a conhecer uma pessoa que pode aprender e contribuir com sua empresa.  

Na lista de eXtreme Programming do Yahoo Groups, está rolando uma discussão sobre pedir “sample code” para os candidatos. Mandei minha opinião por lá, e coloco a mesma abaixo. Se você quiser saber mais sobre o nosso processo de seleção, fizemos alguns posts aqui e no meu blog também coloquei algumas coisas buscando ajudar profissionais nos seus processos de seleção e também networking. Mas aqui o foco é falar do processo de seleção. Termino com a mensagem que mandei lá na lista de discussão. 

In my company, we do coding dojos every week.  

During 1 hour per week we play with some sort of problem and experience different programming languages and put ourselves in situations to work with Pairing, Communication, Design (Unit Testing + Refactoring + OO + Patterns).  

With that, when we are hiring, we ask people to play with one of our problems, in the language we are mostly looking for at the moment. We ask people to play during 1 hour at most. We don’t need the code 100% done. We need some sort of code in order to talk to the candidate in another way. We want to check how the candidate play with feedback and small refactorings in the source code. When possible, we bring people to pair with us.  

Also, we have a good talk before and after, to check one specific thing: the attitude.  We want to make sure that the candidate attitude is aligned with our team attitude.  

And for those people who don’t pass this process, we give real feedback with references for extra study, saying where they  can improve. With that, we get new friends and someone to follow our process. 

Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.

Desenvolvendo para iPhone e iPad – Recursos para aprender

A nossa equipe vem desenvolvendo a versão do uMov.me para plataforma iPhone e iPad. E dentro deste processo, temos um trabalho de nos capacitar de forma constante, permitindo que mais pessoas da equipe possam trabalhar com objective-c, atuando na nossa característica de sermos multidisciplinares e poliglotas no desenvolvimento de software.

Um dos recursos que eu considero bem legais para aprender o “desenvolver objective-c“, fora todos recursos no site da apple, é o material liberado pela Stanford como Creative Commons.  Fora todo o material de slides e exemplos disponíveis, ainda existe uma grande quantidade de material de vídeo disponível no iTunes.

Fora este material todo claro, existem vários outros tutoriais na internet, desde trabalho com views e banco de dados SQLite, que podem ajudar a entender e evoluir aprendizado.

Dentro deste processo, também indico o estudo de ferramentas para apoiar o processo de testes. Uma das que estamos já trabalhando é o OCUnit. Uma outra ferramenta que vale olhar é o Frank, para testes de aceitação dentro do desenvolvimento iPhone. Neste sentido, de estudar testes automatizados, no próprio material da Stanford, existe uma lição sobre o assunto. Lição 19

Vagas e mais vagas abertas na Trevisan Tecnologia!

Você é desenvolvedor? Quer desenvolver para Web com Java? Quer desenvolver Apps iPhone? Android? Windows Phone? Blackberry? Java ME? 

Você curte trabalhar no comercial? Quer trabalhar com o uMov.me, produto de mobilidade corporativa e ajudar na evolução do mesmo no mercado? 

Então chegou a hora! Estamos com oportunidades no comercial e no nosso time de desenvolvimento.

Contratações em aberto no mês de março!

Estamos a procura de novas pessoas para nossa equipe. Desenvolvedores Web com foco em Java, VRaptor, JQuery e outras coisas legais. E desenvolvedores Mobile com foco em Windows Phone. E com a mentalidade que trabalhamos aqui. 🙂

Já falamos algumas vezes sobre nosso jeito de contratar. Então qualquer dúvida, faça contato conosco!

Uma coisa importante, é que contratamos apenas quando dói, fazendo referência ao livro rework. Então saiba que você está entrando no momento certo e que será valorizado e apoiado por todos da equipe desde o primeiro dia.

Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.

TTLabs Summit Q2/2011 – Daniel Wildt manda dicas para apresentações

Palestrei sobre o método @Lessig@PresentationZen e @GuyKawasaki, mostrando dicas para melhorarmos nossas apresentações.

Confesso que tive uma ajuda para passar e fixar a mensagem. Foi uma técnica usada pelo @Peleteiro no Agile Weekend 2009, sobre os bebês focas.

Acho que funcionou! 🙂 

Se você mudou sua técnica de apresentação, o que mudou? Mande seu comentário! 

Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.

A semana de trabalho

Olá, 

Trabalho com iterações semanais. Com isto sei quanto de tempo (horas) tenho disponível (nada de hora extra), sei quanto custa minha equipe, e tendo trabalhado com a equipe faz algum tempo, sabemos quantos pontos vamos conseguir entregar por semana em média. 

Planning game segunda-feira pela manhã, retrospectiva sexta-feira a tarde. Média de 1h30min, 2h para cada cerimônia destas. Standup meetings feitas diariamente. Na segunda-feira ela fica “embedded” na reunião de planejamento. 

Trabalho de análise é evolutivo e parte é feito dentro da iteração. 
Muitas vezes realizamos spikes[1] e paper prototyping[2] para entender melhor uma demanda e poder planejar com mais certeza. 

Conforme uma funcionalidade vai ganhando força e “interesse”, ela vai evoluindo em definição. Dentro do processo 3C [3]. 
Lembrete -> roadmap -> épico -> user story -> testes de aceitação
Tenho que fazer um post sobre isto. Anotei aqui.

Como vocês contratam?

Muitas vezes me perguntam como a gente faz a contratação aqui na empresa. Até fizemos no passado um podcast falando sobre contratações e eu mesmo fiz um post no meu blog sobre vagas de emprego e como elas devem ser legais.

São com certeza pontos importantes, mas não são apenas estes que existem.

No blog do udemy, achei legal um post sobre como atrair, contratar e manter as pessoas que vão trabalhar na sua empresa e nos seus produtos.

Os pontos que mais valorizo quando vou fazer uma contratação são os seguintes:

  1. Sem pressa. Não devemos correr para buscar currículos. Devemos buscar experiências e isto deve aparecer desde o início da conversa. Antes, existia no nosso site um local para a pessoa mandar currículo, links para email de RH, tudo muito “fácil” e direto. Agora o que temos é um espaço para contato. E ele é proposital. Quero saber como a pessoa se apresenta. Quero saber como ela fala sobre o que quer e o que busca. Que redes sociais ou site referencia. Ou ela se limita a querer um local para poder anexar um arquivo “.doc”?
  2. Busque referências. Ao receber um contato, queira saber quem é aquela pessoa. Redes sociais, e aqui é onde o LinkedIn pode ser útil. Você certamente conhece alguém que já trabalhou ou trabalha com a pessoa. Só tem que tomar cuidado para não expor quem está buscando novas oportunidades por aí. Além disto, a questão é buscar referências entre equipe, amigos e conhecidos para novas pessoas na empresa, assim elas já estão vindo com um “voto de confiança”. Hoje em dia só indico quem tenho certeza que pode fazer a diferença. Nem sempre foi assim. 🙂
  3. Seja realista. Você certamente possui um orçamento. Então não tente convencer a pessoa a reduzir os ganhos pela metade. Jogue com a realidade. Assim que surgir a oportunidade, tente entender o que a pessoa espera ganhar, o que ela está buscando. Seja tranquilo em falar sobre a grana que pode oferecer e benefícios que a empresa oferece. Você tem benefícios diretos (vales refeição, plano de saúde) e indiretos (treinamentos internos, dojos, ritmo saudável/sustentável e acesso a internet). Pode parecer loucura, mas deixar claro que não se gosta de horas extras, que se busca produtividade em equipe, e que a pessoa pode acessar a internet de vez em quando, ainda são exceções nas empresas de hoje.
  4. Transpareça sua cultura. Deixe claro quem é seu time e a identidade que se tem. No que acreditam. Já tivemos casos aqui onde a pessoa agradeceu o convite para participar do processo de seleção, mas ela sentiu que não era um lugar confortável para trabalhar. Ela buscava uma hierarquia mais estruturada (somos flat até onde é possível), ou questões de crescimento, nome do cargo, necessidade de ter alguém cobrando suas tarefas (aqui buscamos equipes que se auto-organizam e auto-gerenciam).
  5. Queira a atitude da sua equipe. Mesmo que o candidato em questão seja um técnico excelente, com todas certificações e participações em eventos que podem ser um sonho, será que esta pessoa compartilha da atitude da sua equipe? Você não quer um herói. Ou quer? Pelo menos eu busco sempre alguém que vai somar na equipe. Que vai entrar para ensinar e aprender. Que tem humildade para perguntar e para ensinar quantas vezes tiver que ensinar. Isto é importante para questões de pareamento e transferência de conhecimento.
  6. Compartilhe a decisão. Eu muitas vezes tomava a decisão de contratação sozinho. Até tinha equipe participando das entrevistas, mas no final eu decidia se entrava ou não. E quando a pessoa “falhava” dentro da equipe, a culpa era minha. Então acabei diluindo a decisão deste processo, me tornando inútil nele na verdade e sendo apenas um facilitador. Hoje nas entrevistas temos de 3 a 7 pessoas participando por sessão de entrevista. O objetivo é a pessoa sendo entrevistada conhecer quem serão seus pares. E da mesma forma a equipe poder questionar e assim entender se o candidato é o que se busca ou não.
  7. Teste tecnicamente e mentalmente. Você deve testar tecnicamente de alguma forma. A gente busca mandar algum problema que seria trabalhado em um Coding Dojo, para permitir que a pessoa teste e mostre skills com Unit Testing e possivelmente Test First (Test Driven Development) com alguma linguagem de nosso interesse. Normalmente as contratações tem base em Java, mas queremos pessoas com interesses em outras linguagens, exemplo Ruby, C# e Objective-c. Fora isto, buscamos testar como a pessoa escreve, e como ela estrutura seu pensamento. Como ela modela testes. Temos um questionário para isto, onde validamos conhecimento e comportamento em determinadas situações. Exemplo para relatar um defeito, relatar uma nova funcionalidade, e por aí vai.

E como funcionam nossas rodadas de entrevista?

  1. Entrevista inicial + expectativa de $$$. Aqui se a expectativa da pessoa está fora do que podemos pagar, já alinhamos e encerramos o processo.
  2. Questionário não técnico. Validar português e questões de escrita.
  3. Teste de código, usando problema de programação.
  4. Pareamento. O “pareamento” é normalmente usado quando a pessoa está desempregada, de férias ou possui alguma disponibilidade. O objetivo é que ela viva o nosso ambiente por algumas horas durante 1 ou 2 dias, para sentir a equipe mais de perto, participar de uma reunião diária ou de um coding dojo e assim poder conhecer melhor a equipe, ambiente, empresa, e por aí vai.
  5. Nova entrevista + papo sobre $$$. Se chegou até aqui o objetivo é fechar. 🙂

Era isto. Queria compartilhar um pouco como é o nosso processo e pontos que acreditamos. E vocês, como vocês contratam?

Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.