terça-feira, 30 de agosto de 2016

Certificação Android da Udacity

Olá pessoal,

No Google I/O 2016 foi anunciada a primeira certificação para desenvolvedores Android. O nome da prova é Associate Android Developer Exam e é mantida pela Udacity em parceria com o Google. O intuito dessa certificação é tornar mais fácil para empresas encontrar desenvolvedores qualificados, e obviamente, "provar" que o desenvolvedor possui o conhecimento necessário para criar aplicativos seguindo os padrões recomendados.



Por curiosidade, resolvi fazer essa prova para saber o nível de dificuldade e até orientar meus alunos e demais desenvolvedores interessados na certificação. Sendo assim, o objetivo desse post é dar meu feedback sobre essa prova.
A preparação sugerida para a prova é fazer os cursos da Udacity, que em sua maioria tem o material (vídeos) gratuitos. Mas você pode fazer os cursos de formação conhecidos como Nanodegree, que atualmente estão divididos em Android Basics e Android Developer.

O básico possui:
Enquanto que o segundo contém:
Creio que apenas os cursos básicos são necessários para a prova, então recomendo bastante vocês assistirem. Mas pela minha experiência nessa prova, se você aprendeu Android com o livro do Ricardo Lecheta ou com o "Dominando o Android", fará esse exame sem problema. Creio que esses outros cursos serão abordados nas próximas certificações (que ainda não foram lançadas).

A avaliação é bem diferente das provas de certificação Java (Mobile, Programmer e Web) da Sun/Oracle, pois não é composta de uma série de perguntas de múltipla escolha e com um monte de "pegadinhas". Na certificação Android você recebe um projeto (bem pequeno, com cerca de 12 classes) com algum código já pronto. Então você precisa implementar funcionalidades e corrigir alguns bugs. O prazo para isso é de 48 horas, então reserve um tempo livre para fazer o exame.

Os assuntos utilizados na prova estão em um nível bem básico. São eles: criação de layouts simples, utilização da pasta de recursos, criação de adapter para RecyclerView, definição de menu, ContentProvider usando SQLite, SharedPreferences, trabalhar em background, IntentService, JobScheduler, Notification, AppWidgets e testes com Espresso. Ou seja, a prova é bem abrangente, mas não exige um profundo conhecimento desses assuntos (principalmente sobre testes). Achei interessante eles não cobrirem/pedirem nada sobre fragments.

Uma vez preparado para realizar a prova, basta se registrar e pagar a taxa. O valor é de US$149 mas, segundo a Udacity, até 31 de dezembro de 2016, o valor cobrado será de US$ 99.
Ao começar a prova, será exibida uma lista de requisitos a serem implementados na aplicação. Você terá que: alterar telas existentes, criar uma nova tela, implementar um adapter, alterar um Content Provider, executar um Service, disparar notificações, agendar serviços, corrigir alguns bugs e escrever um teste simples.

Concluído o projeto, você terá que enviá-lo em um arquivo zip (apague as pastas build e app/build), escanear um documento seu (eu usei minha CNH) e enviá-lo em formato PDF. Feito isso, será feita uma avaliação (tanto automática, quanto por pessoas) do seu projeto e você receberá o resultado para saber se seu projeto cumpre o que foi requisitado ou se precisa de modificações. Se ele cumprir todas as especificações, você irá para a fase de entrevista onde você poderá explicar como você implementou seu projeto. Pelo que sei, por enquanto a entrevista é apenas em inglês, mas parece que a Udacity já está trabalhando para fazê-la também em português. Sendo aprovado na entrevista, você receberá sua certificação. Segundo a Udacity, espera-se que todo esse processo dure no máximo 45 dias.

Ainda estou aguardando o resultado da avaliação e consequentemente a entrevista. Assim que for andando o processo, vou atualizando o post aqui.

Enfim, achei o nível da prova bem bacana para uma certificação de entrada. E acho que qualquer dev com 1 ano (ou até menos) de experiência consegue fazer.

[ATUALIZAÇÃO 27/09/2016]
Recebi um email da Udacity para “verificar minha identidade”. Basicamente eles pedem para que você envie uma foto da sua identidade/carteira de motorista/passaporte. Pode ser tirada com a webcam do computador ou escaneada. Enviei a foto do passaporte para não ter o risco de problema com “documento brasileiro”. Após enviar a foto do documento, eles pedem uma foto sua. Tirei ambas com a webcam e enviei. Minutos depois, recebi um email informando que minha identificação tinha sido confirmada com sucesso. Agora creio que a próxima etapa será a entrevista

[ATUALIZAÇÃO 17/10/2016]
Após 47 dias, ainda não recebi nenhum feedback sobre a certificação. Após dar aquela boa e velha "xingada no twitter", o JP (o cara do vídeo acima) respondeu...
Vamos ver quanto tempo demora esse "breve".

[ATUALIZAÇÃO 25/10/2016]
Eis que após 55 dias recebo o email para agendar a entrevista da Certificação Android. Tentei três datas diferentes e em todas só havia um horário disponível.
No email eles deixam bem claro que você precisará de um documento para comprovar sua identidade (passaporte ou carteira de motorista de preferência). Você precisará de uma webcam e de uma boa conexão de internet para não haver problema de comunicação na entrevista.
Fiz o agendamento para o dia 28/10 às 20h (horário de Brasília). Vamos ver como me saio :)

[ATUALIZAÇÃO 28/10/2016]
Chegou o dia da entrevista. Esqueci de mencionar na atualização anterior que no momento do agendamento, é informado o link para o aplicativo Zoom (https://zoom.us/) que você deve ter instalado na sua máquina.
Minha entrevista durou exatos 5 minutos :) isso mesmo. O camarada me deu boa-noite, pediu para eu mostrar minha identidade e disse que iria me fazer 5 perguntas. Todas extremamente fáceis e nada de mostrar ou explicar código.
Respondidas as questões, o entrevistador me deu os parabéns, disse que eu era um dos primeiros a terminar o processo e que em breve eu receberia um email com mais informações.

[ATUALIZAÇÃO 04/11/2016]
Após uma semana de espera, chegou o email da Udacity com o resultado da avaliação.
Agora tenho que aguardar outro email para pegar minha badge... :)

[ATUALIZAÇÃO 23/11/2016]
Chegou o email com a badge! Até que é bonitinha :)


No email, chegam as instruções para você adicionar a certificação no seu perfil do LinkedIn. Basicamente você clicar em um link, então o LinkedIn vai perguntar se você quer adicionar essa certificação ao seu perfil e pronto! Vai aparecer isso no seu perfil, na seção de certificações :)


Acho que esse será o último update desse post. Ciclo completo depois de 83 dias (ao contrário dos 45 prometidos pela Udacity). Espero que venham novas certificações mais exigentes e mais organizadas que essa.

[ATUALIZAÇÃO 22/11/2017]
Há um tempo atrás recebi um email da Udacity pedindo algumas informações, entre elas o tamanho de camiseta. Eis que um ano após a certificação, acabam de chegar alguns "mimos" :)
Uma camiseta, um bonequinho do Android e um adesivo. Achei bacaninha :) Valeu Google/Udacity!

4br4ç05,
nglauber

14 comentários:

Luís Leão disse...

Ótimo o post Glauber!!!

A certificação cobre o que corresponde ao Nanodegree Android Basics (vai ser lançado agora em Setembro aqui no Brasil) e segue o processo de validação de aprendizado que acontece em todos os nossos programas Nanodegree, principalmente a questão da validação de projeto que precisa ser submetido e atender a determinadas rúbricas.

O processo de validação não é automático e uma pessoa (no caso o revisor) valida o que foi submetido, testa e comprova o que você desenvolveu.

Obrigado por esclarecer a todos interessados nessa certificação. É uma parceria do Google e Udacity e a gente quer trazer o melhor experiência para que profissionais alcancem o mercado de trabalho.

Sei que esse processo ainda não está está Português, mas como o pessoal do Google costuma falar: "ainda".



[]'s e obrigado!

Leão

Nelson Glauber disse...

Oi Leão!

Obrigado pelos esclarecimentos. Eu vi no site da certificação e na apresentação do I/O que parte do processo de avaliação é automatizado, por isso que falei.
Espero que esteja logo disponível em português, pois vai ajudar muita gente. E se precisar de qualquer coisa é só falar.

4br4ç05,
nglauber

Sh4reX disse...

Olá Glauber

Obrigado pelas informações, são bem úteis. Já estou acompanhando seu blog aqui para obter mais informações dos próximos passos.

E obrigado ao Luís Leão pela contribuição no post.

Abrs.
Roberto Silva

Unknown disse...

Obrigado Nelson Glauber. Valeu por compartilhar conosco .

pedrofsn disse...

Obrigado, estava curioso sobre a prova.

Carlos Queiroz disse...

Bacana!!! Valeu por compartilhar.

Blog do ueder disse...

E aí Nelson, pegou a sua certificação Android?
É compensativo a realização da mesma ?

Nelson Glauber disse...

Oi Ueder,

Ainda não "peguei" mas já terminei o processo. Segundo eles, devo receber um email semana que vem. Atualizo aqui assim que receber.
Baseado nessa avaliação (projeto+entrevista), acho que não vale a pena para currículo. Pode valer para aprendizado se você está começando com desenvolvimento Android. Prefiro que o cara tenha uma app publicada (ou que tenha trabalhado em uma) :)

4br4ç05,
nglauber

alexmob disse...

Nada de português ainda?

Nelson Glauber disse...

oi alexmob,

Parece que até o momento, só em inglês mesmo...

4br4ç05,
nglauber

Anônimo disse...

Mesmo começando o aprendizado agora, sem saber nada de programação, comecei o curso dá Udacity, estou no begginer. Fazendo os doi primeiros, acha que serei possível de fazer a minha primeira certificação? Obs tenho 25 anos.

Nelson Glauber disse...

oi anônimo,

acho que é possível, mas vai depender de vários fatores. se você tiver aptidão para programação e se dedicando você poderá tirar a certificação. mas pense em aprender e dominar o assunto, depois, tirar a certificação vai ser bem fácil.

4br4ç05,
nglauber

Luciana Gitahy disse...

Parabéns pelo certificado, também estou fazendo, mas estou preocupado com a entrevista em inglês, pois não domino a língua. Como foi a entrevista, oq eles perguntaram? Por favor, preciso dessa ajuda.

Nelson Glauber disse...

Oi Luciana,

Em relação ao inglês, eu nunca gosto de dizer "ah! o inglês você desenrola...". Você é quem sabe está confortável para explicar sua implementação em inglês. Mas já ouvi de uma avaliadora da Udacity que eles são bem pacientes quanto a isso.

Em relação as perguntas que me fizeram, era bem simples. Pelo que lembro foram:
- Qual parte da aplicação foi mais complexa de implementar e porque?
- Como você implementou a persistência de dados da aplicação?
A última foi relacionada ao agendamento de tarefas, mas não lembro bem...

4br4ç05,
nglauber