
De alguma forma, descobrimos que quase todas as oito questões foram discutidas com os desenvolvedores de escritório e não interrogamos como é a vida como freelancer. Hoje, finalmente, estamos consertando. Narrado por Denis Kazakov (
nrcpp ). Ele escreveu o primeiro programa aos 14 anos em Pascal e, na universidade, desenvolveu seu
compilador C ++ e arrancou um artigo sobre esse jackpot cármico em Habré.
Ele considerou Kush mais realista no Upwork - 60 projetos concluídos e somas arrumadas (bem, para mim) no gráfico do dinheiro recebido. Mas, sob o corte, não há vanglória nem motivos no espírito de "você também pode". Pelo contrário - uma história sobre a amarga experiência de escritório de um freelancer experiente.
1. Conte-nos sobre o recurso que você implementou e do qual você se orgulha.
O primeiro "recurso" foi o primeiro semestre da universidade. Cheguei à universidade já preparada e passei a sessão automaticamente. Ele pode não ter aparecido no exame, mas os colegas pediram para ficar e ficar no corredor, para ajudar se isso acontecesse. Após 15 minutos do início do exame, quase todo o grupo, por sua vez, "queria usar o banheiro". E isso é cerca de 25 pessoas.
Cada um suportou uma folha, depois duas. Em todos os lugares, com um toque nervoso, algo como "Adicione 2 elementos no máximo em uma matriz" ou "Encontre um elemento em uma matriz maior que X" é arranhado.
Uma hora depois, era um transportador inteiro. Duas pilhas cresceram ao meu lado - em uma, mais e mais folhas novas, na outra - tarefas já resolvidas. Uma pessoa apareceu, criou uma nova “festa” e tomou soluções prontas. Assim, todo o grupo passou na sessão às 4 e 5. Desde então, somos amigos.
O segundo recurso é o meu próprio compilador C ++, que escrevi quase todo o período de estudos na universidade. Desde então, não tenho conseguido realizar meu próprio projeto sozinho com um entusiasmo. Onde as pessoas conseguem forças para seus novos projetos?
E o terceiro projeto é um teste de visão regular. Criei a partir de "Arquivo -> Novo Projeto" e finalizei com as vendas. Mas o verdadeiro zumbido é que você vê como as pessoas usam sua ideia, e isso as ajuda a identificar problemas de saúde.
2. E agora - sobre o fakap mais feroz
Eu não trabalhei no Google, não escrevi software para cirurgiões e ciência de foguetes, então não me lembro dos fakaps brilhantes por causa do meu código. Vou te dizer melhor como eu procuro ser líder de equipe.
Depois de muitos anos trabalhando como freelancer em casa, o diabo me levou a trabalhar no escritório, em uma grande empresa de terceirização, com um cliente ainda maior (um dos líderes mundiais do setor). A situação é estressante para mim, eu realmente não trabalhava no escritório antes e havia uma multidão de pessoas para organizar. No começo havia 6, depois 10, depois 18, e no final eram 25! Eu não contei com tal presépio. Afinal, todo mundo é para si mesmo. Ele pegou um cartão em Jira e se viu em silêncio. E você não quer cortar.
Isso não vai funcionar aqui. Às 10h na recepção, fique quieto e seja gentil, diga "Estou trabalhando na minha tarefa" no stand-up. Às 16:00 telefonou para o cliente. Você diz a mesma coisa, apenas para ele e em inglês. Entre essas duas classes, você é atraído pelos meses de junho, estagiários, contadores e faxineiros. Obviamente, a responsabilidade por tudo depende de você.
Em geral, comecei a sentir que não podia lidar, e essa organização do trabalho não é para mim. Perdi o interesse no trabalho, mas meu salário e força de vontade me mantiveram no espírito de "você pode!" Não faça isso.
Quando o Timlid não tem interesse, surge o caos. Em junho, assumiu 50% das tarefas, simplesmente porque ele estava sentado ao meu lado no espaço aberto. Outro estagiário levou um módulo autônomo crítico, que foi concluído por quase toda a equipe.
Eu caí por um mês devido a problemas de saúde e, quando voltei, o projeto ordenou "vida longa". E a equipe se dispersou em outros projetos do mesmo cliente. Depois de um tempo, voltei ao meu freelancer habitual.
3. Descreva seu espaço de trabalho: da cadeira e do monitor aos ambientes de programação e seus utilitários favoritos. E anexe capturas de tela, se puder
A mesa grande é a chave da produtividade, eu acho.

O ferro é completamente trocado a cada 5-6 anos. Agora estou pressionando o máximo da segunda geração do i5, com um SSD de 500 GB + HDD antigo e 16 GB de RAM DDR2. Há muito tempo é uma comichão para atualizar, especialmente quando a porcentagem está superaquecendo. Mas o sapo pressiona ou é mais fácil alterar a pasta térmica. Neste verão, com um chiado, mudei do Windows 7 para o top 10, pois no Xamarin é mais fácil escrever nele.
Há também um MacBook Pro 2011 atrasado, para projetos iOS. Frigideira prejudicial devido à idade. Mais uma vez, o dilema é economizar dinheiro para um apartamento ou comprar um novo MacBook que não seja assado.
De Tula - a partir do 99º ano do Visual Studio. E com cada nova versão, estou convencido de que nada mais é necessário. Algumas extensões muito pequenas, como Ctrl + Clique para ir para a declaração do método e entrar em batalha.
Para Git - SourceTree. Para teste em diferentes sistemas operacionais - VmWare. Às vezes, eles pedem que o instalador faça - para isso, o Instalador Avançado. Tudo o resto é feito na web ou no notepad.exe. Quando o Java era necessário, o IntelliJ.
4. Por que princípio você escolhe um emprego? Pilha, produto, condições de vida, dinheiro?
Se houver pedidos de freelance - você está a cavalo, não há pedidos - eu estou pronto para aproveitar a comida 24 horas por dia, 7 dias por semana. Graças a Deus, esses tempos passaram cerca de cinco anos atrás. Mas aconteceu que os cursores fizeram com estudantes da Índia e outros Malvari burros foram convidados a escrever. Agora estou trabalhando no que é interessante. Por exemplo, projetos recentes são automação da Web e PNL.
Tenho 32 anos e agora estou menos entusiasmado com algumas novas tendências. Meu trabalho ideal de escritório fica a cinco metros da casa, de preferência no próximo andar. Um escritório separado, com uma mesa confortável, poltrona e ferro. E as tecnologias que eu conheço. Talvez outros 10-20% do tempo de trabalho, quando você pode experimentar novos. No entanto, descrevi como trabalho hoje.
Você não pode sempre descobrir um produto quando se trata de terceirização. Mas se existe um zoológico de diferentes tecnologias, de Fortran a Go, provavelmente não.
Normalmente peço dinheiro logo acima do mercado, mas isso não é crítico.
5. Quais tecnologias e idiomas que você usa você gostaria de corrigir?
A primeira coisa que o incomoda antes de ranger os dentes é a falta de interface do usuário de plataforma cruzada para .NET. Ou, por simplicidade, o WPF para macOS. O segundo ponto é a qualidade do projeto Xamarin hoje. Especialmente a velocidade de montagem e implantação de aplicativos Xamarin, que voam constantemente no Xamarin XAML Previewer, por motivos desconhecidos, aparecem erros que desaparecem somente após a reinicialização do IDE.
Assim que me sentei para escrever meu primeiro aplicativo sério no Xamarin Forms (o Forms é o fundo, eu sei, mas não havia escolha), fiquei louco com o número de pandeiros necessários para tirar o aplicativo da caixa para iOS / Android. Agora, atualizando completamente o software de terceiros do qual o Xamarin depende - a situação mudou.
Eu gostaria de criar um esqueleto do programa em várias linhas. Parece descrever o modelo de domínio, e o IDE gerou as classes ViewModel, mockup UI, para trabalhar com configurações, logs, capturando exceções, DAL, BAL, SAL - ou seja, wrappers em torno da API.
É como se fosse um andaime no ASP.NET MVC, ou era semelhante no final do LightSwitch. Mas no complexo, como eu descrevi, para que tudo seja gerado juntos - não.
Cada novo projeto, na maioria dos casos, é uma cópia e cola de código do passado. Em seguida, vincule os componentes da nova base de código entre si, através de camadas de abstrações.
Acho que a situação mudará muito em breve e geraremos 90% do código do aplicativo em várias linhas de DSL. Embora as tentativas com a "bala de prata" não tenham parado desde a criação do primeiro programa.
6. Onde é melhor aprender com a experiência de outra pessoa - em uma universidade, em conferências, em Habré? Em outro lugar?
Pegue e faça. Basta escrever o código. Mas, em geral, cada um na sua. Por exemplo, comecei a escrever programas, como em filmes sobre hackers. Eu fui para os cursos Turbo Pascal. Escreveu o primeiro programa que adiciona dois números. Ele o lançou e me arrastou trinta quilômetros por todos os portais do universo. E então eu percebi que era meu.
O segundo e o terceiro programas já eram mais difíceis de dominar - havia se e enquanto. E eu não fui mais a cursos. Mas o desejo permaneceu. E como não havia colegas experientes e, posteriormente, professores, acabei de comprar livros. Reescrevi as listagens de programas e comprei novamente.
Então ele começou a inventar algo próprio. Pensei em escrever meu compilador C ++. Três anos se passaram. E eu já estava pronto para o projeto em condições reais, pelas quais o dinheiro está sendo pago. Projeto por projeto, melhorando ao longo do caminho, cresceu para Microsoft MVP, MCP e concluiu 60 projetos.
Mas ele não aprendeu a escrever façanhas, como no filme "Hackers".
7. Se você tivesse recursos ilimitados (tempo, dinheiro, poder, pessoas), qual projeto você adotaria?
Você sabe, eu gostaria de criar um sistema que mudasse a abordagem do desenvolvimento fundamentalmente. Pelo contrário, o processo de escrever código.
Lembra como o personagem principal do filme “Password Swordfish” criou seu Khidra? Aki xamã, agitando as mãos e girando o cubo de rubik. Ou como no filme Homem de Ferro. Sim, esse é o padrão de Hollywood - agitar as mãos em uma tela translúcida, dobrando cubos. Eu gostaria de criar uma coisa dessas e colocá-la nas massas.
A propósito, com toda a seriedade, eu já investi em uma ferramenta semelhante para programadores que trabalhavam no iPad. Mas, aparentemente, três freelancers e US $ 20.000 não são suficientes para uma revolução na programação.
8. Como você relaxa? O que você está fazendo além do trabalho?
Quando eles me perguntam sobre hobbies e tempo livre, caio em um estupor. Imagine imediatamente o interlocutor em uma roupa de esqui, descendo famosamente das montanhas alpinas. Ou um viajante nas florestas amazônicas.
Eu não tenho um hobby específico. Anteriormente, ele esteve profissionalmente envolvido no futebol, até os 16 anos de idade foi capitão da equipe juvenil da liga principal. E então eu escrevi o primeiro programa ... Agora eu gosto de assistir partidas de alta qualidade, às vezes eu saio para correr sozinho.
Eu gosto de andar sozinho no centro da cidade. Aprenda uma nova tecnologia, mas o fusível é suficiente para duas a três semanas. Apegue-se a algum site completamente inútil, como a lepra.
Recentemente, estou tentando descobrir como criar um vídeo. Criei um canal no YouTube onde falo sobre freelance. Enquanto isso é mais um experimento.
E assim, eu tenho duas pequenas esingroses e uma esposa que não me deixa ficar entediada.
9. Conte cerca de três livros favoritos - educacional, popular ciência e ficção.
Ciência educacional e popular - Donald Knuth, “A arte de programar” (1º e 3º volume)
Artístico - Não sei na lua. Eu li aos 7 anos, depois disso, não me lembro de nada para começar a ler. Talvez a biografia de Jobs tenha percorrido um longo caminho. Da última coisa que li - Sapiens. Uma breve história da humanidade.
10. Se, bem diante de seus olhos, a IA acordar, o que você dirá a ele?
Bem, primeiro, acredito que a mente e a alma são uma. Uma pilha de ferro não pode ter uma alma por definição. Embora meu computador reaja de maneira diferente se você gritar ou elogiá-lo, por algum motivo.
Mas se imaginarmos hipoteticamente que a IA se adapta às condições de vida na Terra, ela adotará os hábitos comportamentais das pessoas, como uma criança, ao aprender a andar e conversar. Então, provavelmente, eu perguntaria como curar doenças incuráveis e evitar guerras, e então superpopulação da Terra.
Pergunta do herói anterior
O que você faria em uma expedição intergaláctica de várias gerações?
É claro que vou codificar e automatizar as necessidades da expedição.
E se você sonha, e assume que não estou envelhecendo, não há tempo e estrutura para o consumidor, então tentaria visitar o maior número possível de planetas adequados à vida. Troque contatos com os moradores de Gliese 581g, beba cerveja em Marte, lance uma startup em Andrômeda, durma com um alienígena.
Pergunta para o próximo herói
Que conselho você daria a si mesmo quando voltasse 10 anos atrás?