"Mas eu não tenho experiência..." E daí??? - Como quebrar o ciclo vicioso de não ser contratado...

Post on 08-Jul-2015

136 views 0 download

description

Como quebrar o ciclo vicioso de não ser contratado porquê não tem experiência.

Transcript of "Mas eu não tenho experiência..." E daí??? - Como quebrar o ciclo vicioso de não ser contratado...

“Mas eu não tenho experiência...”

E daí??

Como quebrar o ciclo vicioso de não ser contratado porque não tem experiência.

Um pouco sobre nós...

@juliocnsouza

juliocnsouzadev@gmail.com

● Júlio CN Souza

● Desenvolvedor Web e Mobile

● Co-fundador da Mobilità Sistemas

Um pouco sobre nós...Startup de tecnologia com foco em desenvolvivento de soluções SaaS.

Trabalhamos com foco no desempenho e na experiência do usuário , adotando os princípios de desenvolvimento e gestão de software ágil.

Atualmente nosso principal projeto é o ezCare, uma solução de alto impacto social voltada para a Atenção Básica da Saúde municipal.

Um pouco sobre nós...● Rafael Bruno

● Engenheiro de Software na Mobilità Sistemas

● Entusiasta Javascript e do movimento Startup

@rafaelbrunoweb

rafaelbruno.web@gmail.com

Ciclo Vicioso

Empresas não te contratam porque você

não tem experiência e

você não adquire

experiencia porque não é contratado.

O que fazer então?

1º Passo: Ter conhecimento

Conhecimento para ter confiança.

Se você tem conhecimento, você tem mais confiança e essa confiança fica evidente durante uma entrevista.

Conhecimento de quê ??

É claro que existem várias áreas: Mobile, Web, Front-end, Back-end etc. E dificilmente em pouco tempo você conseguirá ter um conhecimento profundo de vária áreas.

Mas existem alguns conhecimentos básicos que você deve ter e conhecer profundamente, para te servir de base para trabalhar com outras tecnologias.

Orientação a Objetos● As linguagens de programação mais utilizadas

comercialmente hoje e que possuem frameworks de alta produtividade são linguagens orientadas a objeto.

● Conhecer bem conceitos de Herança, Polimorfismo, Abstração e outras facetas da Orientação a Objetos é essencial.

● Porém saber na prática é mais essencial ainda. Independentemente se você tem mais facilidade com Java, PHP, C# ou Ruby. Escreva muito código OO e busque aprimorar sempre. Você vai notar que OO envolve bastante prática e que um código que você escreveu a 3 meses atrás hoje você conseguiria reescreve-lô com mais eficiência

E o que mais?

● Persistência de dados também é essencial, em algum momento o que você desenvolver vai precisar salvar dados, seja em um banco sql, um NoSql ou até mesmo em um arquivo de texto. Você tem que estar preparado para conseguir criar um CRUD a qualquer momento.

● HTML5 e CSS3 (não importa se seu foco, sempre existirá algo na web para você desenvolver).

Prove que você tem conhecimento● Certificações

Prove que você tem conhecimento

● Fazer cursos, minicursos, participar de eventos e palestras e colocar evidência disso em seu currículo

Prove que você tem conhecimento

● Passe adiante o conhecimento, ajude outros. Quanto mais você fizer isso, mais você vai ouvir as pessoas falar: "Aquele cara ali manja hein!"

● Manter um blog sobre assuntos e conhecimentos adquiridos.

● Participar de listas e fóruns de discussão (stackoverflow, guj)

● Não pare continue avançando em seus estudos! Defina seu perfil e faça um planejamento! O que as grandes empresas estão desenvolvendo? Que tecnologias e tendencias estão usando ou criando?

2º Passo: Adquirir experiência

Como adquirir experiência?● Programando, Programando, Programando.

● O livro "Outliers", que fala sobre os fatores que levaram a pessoas a ter grande sucesso, como por exemplo Bill Gates.

● Um dos principais fatores de sucesso em comum entre essas pessoas, os Foras de Série, é a prática.

● Um número de horas necessário para que uma pessoa seja considerada "boa" em algo... 10.000 horas.

● Se você praticar 8 horas por dia, todos os dias você levará cerca de 3 anos e meio para chegar a essas 10.000 horas?

O que você pode fazer para buscar as suas 10.000 horas?

● Você já está na faculdade... isso é um início, mas não é tudo!

● Nesse mesmo livro fala como Gates e outros buscaram essa prática. Em um época em que acesso a computadores para se programar era privilégio para poucos, Bill se aproveitou da oportunidade que teve e teve acesso a programação em 1968 enquanto cursava a 8ª série e durante um bom tempo programava 8 horas por dia 7 dias por semana.

O que você pode fazer para buscar as suas 10.000 horas?

● Crie projetos experimentais de coisas que você gosta. Uma site sobre suas bandas preferidas, um app para dividir conta do bar com os amigos ou um app para lista de compras na feira ou supermercado para sua mãe.

● Nunca espere ser mandado, tome a iniciativa e faça!

● Mostre o que você fez, suba seu códigos para um repositório como GitHub, compartilhe com seus amigos e professores (e ponha isso em seu currículo e LinkeIn).

O que você pode fazer para buscar as suas 10.000 horas?

● Projetos Open Source.● GitHub

O que é o Github?

● GitHub é o melhor lugar para compartilhar código com amigos, colegas de trabalho, colegas e estranhos.

O que é Github?

Os desenvolvedoresestão no Github

Os desenvolvedoresestão no Github

As Empresas estão no Github

As Empresas estão no Github

As Empresas estão contratando pelo Github

Como você pode participar em projetos open source no GitHub?

● O primeiro passo é a criação de uma conta no site do github, assim, basta entrar em https://github.com/ e preencher o formulário de cadastro.

Como você pode participar em projetos open source no GitHub?

O segundo passo consiste em baixar a aplicação ‘git’, esta será a responsável por toda a manipulação que realizaremos nos repositórios aos quais desejamos contribuir (https://help.github.com/articles/set-up-git.).

Como você pode participar em projetos open source no GitHub?

● Para começar a trabalhar com o git de forma colaborativa é necessário conhecer dois conceitos básicos relacionados ao uso da ferramenta. Esses conceitos são o conceito de fork e de pull request.

Fork

● O fork consiste em realizar a cópia de um repositório de alguém, adicionando esse repositório aos nossos repositórios. Em linhas gerais, nos tornamos os ‘donos’ do repositório o qual estamos realizando o fork (mas o original se mantém intacto).

● O fork é o primeiro passo para colaborar em um projeto.

Ao clicar em fork, o repositório em questão é copiado para a nossa base de repositórios e então viramos donos do repositório o qual copiamos, ficando este inclusive disponível na listagem dos nossos repositórios.

Pull request● O pull request consiste em uma solicitação de integração das

nossas modificações com o repositório que realizamos um fork.

● Para realizar um pull request devemos ir até o repositório gerado pela operação de fork (na nossa base de repositórios). Lá, encontraremos um botão chamado ‘pull request’:

● Também podemos escrever um título e comentários sobre o nosso pull request:

Escolha um projeto para contribuir

Escolha um projeto para contribuir

E agora, como posso contribuir?

1) Realiza-se um fork do projeto para o qual se quer contribuir.

2) Clona-se o repositório criado através do fork para o nosso ambiente de trabalho .

3) Realizam-se as modificações /correções / novas implementações desejadas.

4) Realiza-se o commit de nossas modificações.

5) Faz-se o push para o nosso repositório (que criamos através de um fork no passo 1).

E agora, como posso contribuir?Agora já estamos aptos a submeter nossas modificações usando o recurso de pull request.

● Assim, basta irmos até o nosso repositório (que criamos fazendo um fork no passo 1) e clicarmos em ‘pull request’. Seleciona-se então o repositório e o branch de destino e o repositório e o branch de origem. Nesse momento, podemos escrever um título para o nosso pull request e também adicionar comentários sobre o que estamos fazendo. Finalizado o preenchimento dos campos, basta clicar em ‘send pull request’.

● A partir de agora, é necessário esperar para ver se a comunidade e os donos do repositório aprovam a mudança realizada. Se a mesma for aprovada, o dono do repositório pode realizar um merge do que fizemos com o projeto em questão, unificando assim o código.

Então??

● O mais importante é que você tenha em mente o seguinte, não importa o nível de conhecimento ou experiência que você tenha, o que importa é sua iniciativa e dedicação para aumentar esse nível.

● Buscar conhecimento, praticar por meio de pequenos projetos, contribuir com colegas, projetos open source, participar de comunidades (fóruns, grupos de estudo) vão contribuir muito com seu crescimento profissional, enriquecer seu currículo e te dar visibilidade. Ao participar de um processo seletivo com certeza você será visto com outros olhos pelas empresas mesmo sem ter tido uma experiência formal.

Startups

Ciclo Vicioso

● "Iniciar uma startup? iniciar um projeto? Mas eu não tenho experiencia... E dai?"

● Você não quer perder "sua grande oportunidade"!

● Você não precisa ser um "ninja"!

O que realmente é uma startupUma startup não é um tipo de empresa.

Uma startup é um estágio de uma empresa.

O ecossistema das startups

● Aceleradoras

● Incubadoras

● Capital semente

● Investidores anjos

● Venture Capital

● Crowdfunding

● Etc ...

Startups

● Desenvolver uma startup é um processo de descoberta!

● Uma startup evolui conforme seus lideres evoluem!

● Metodologias ágeis para o mundo dos negócios!

● Uma boa ideia por si só, não vale nada!

● Não espere para iniciar seu projeto!

● Dificilmente você sera o único a ter uma ideia!

Conhecimento de quê ??

Existem conhecimentos basicos e ferramentas para se desenvolver uma startup

● Lean Startup

● Business Model Generation

● Customer development

● Design thinking

● Conhecimento técnico

Como construir uma startup, mesmo sem experiencia?

O Problema

Você não precisa saber tudo!- Tenha sócios- Utilize ferramentas - Agendor - ZeroPaper- Aprenda conforme a necessidade

Validar a ideia

● Crie um modelo de negocio e não um plano de negocio.

● Testar as hipoteses

● Pitch

“Os fatos estão fora do escritório, dentro dele só existem opiniões”

- Unbounce, Launchrock, Kickofflabs- Google Forms, Survey Monkey, Wufoo

MVP● Executar a ideia

● Crie um modelo de negocio e não um plano de negocio.

● Testar as hipóteses

● Pitch

● Metodologias ágeis (Scrum, Kanbam, XP)

● Construir o produto certo: Gostamos de desenvolver novos produtos, mas temos que desenvolver o produto certo

PoupHE:labsCodeminer42

Eventos● Startup Weekend

● Case 2014

● Startup Farm

Desenvolver startups é um processo de descoberta Descobrir qual é o problemaDescobrir quem tem esse problema Descobrir qual o melhor produto para esse problema

Assistir vídeo

Vídeo

Quem você vai ser?

● Aquele estudante comum, que frequenta a faculdade faz os trabalhos e que vive reclamando que ninguém te dá oportunidade no mercado?

Quem você vai ser?● Ou aquele cara pró ativo, que se adianta aos seus

professores e ao seu curso, que ajuda seus colegas, que gosta de programar, que estuda e pratica sempre e ao fazer um entrevista deixa de queixo caído seu entrevistador pelo programador que você é, mesmo sem nunca ter sido pago por isso?

Então...

O que você tem feito da vida?

Obrigado

● Júlio CN Souza● @juliocnsouza

● Rafael Bruno Silva● @rafaelbrunoweb