Apresentação
Desenvolvedor Web e Desenvolvedor de Jogos
- Data de Nascimento: 1997
- Localização: São Paulo, São Paulo - Brasil
- Idade: 26
- Freelance e trabalho de tempo integral: Disponível
Olá! Meu nome é Ivo e nasci em São Paulo. Comecei a amar computadores e video games na minha infância e sempre me
interessei em saber como isso tudo funciona.
Quando eu tinha 12 anos, tive meus primeiros contatos com linguagens de programação e
quando completei 13 anos descobri e criei uma ferramenta poderosa em um famoso jogo online que influenciou
centenas de milhares de jogadores no jogo.
Aos 18 anos comecei a encarar isso tudo como uma profissão e comecei a trabalhar com desenvolvimento web e de jogos.
Desenvolvedor Web Full Stack e Desenvolvedor de Jogos focado em JavaScript e TypeScript.
Conheço essas outras linguagens: PHP, C#, Python, C++, C e Delphi.
Meu foco principal de frameworks: VueJS, ReactJS, NuxtJS, NestJS, strapi e PhaserJS.
Certamente também conheço e já trabalhei com as libs e ferramentas generalistas para web e afins: ExpressJS, Sequelize, Mongoose, JWT, axios, jQuery, Bootstrap, Materialize, redux, rxjs, SocketIO, colyseus, web3.js, Cordova, Wordpress, Laravel, Prisma, TypeORM e etc.
Outras game engines e game frameworks que também já tive experiência: Unity, Godot, Unreal, RPG Maker, ThreeJS, BabylonJS, Construct, GDevelop.
Banco de dados: MySQL, PostgreSQL, MariaDB, MongoDB, Redis e RethinkDB.
Cloud: Digital Ocean, Heroku e Render.
Atualmente estudando essas para adquirir proficiência: Dart, Flutter, NextJS, React Native, Laravel.
Educação
Desenvolvimento de Jogos e Arte de Jogos 3D
2015 - 2017
Saga - School of Art, Game and Animation
Unreal Engine, Photoshop e Maya. Conceitos de game design e arte de jogos 3D no geral.
Experiência Profissional
Desenvolvedor Web e Desenvolvedor de Jogos (Tempo Integral e Freelance)
2015 - Agora
Freelance utilizando as mais variadas tecnologias web. Manutenção em sistemas web e sistemas de servidores privados de jogos multiplayer online. Desenvolvimento de sistemas web e jogos no geral. Websites institucionais, landing pages, blogs, aplicativos web, aplicativos híbridos em html5. Manutenção de sistemas, construção de sites, pentest para encontrar vulnerabilidades no sistema e mecânicas de jogos online multiplayer e sites, construção e manutenção de sistemas e mecânicas de jogos online.
Desenvolvedor de Jogos Jr e Desenvolvedor Front-End (Tempo Integral)
Setembro, 2020 - Abril, 2021
Presencial - São Paulo, São Paulo - Brasil em IGS | Desenvolvimento de Software
Desenvolvimento de jogos web de cassino e videobingo, produzidos para a Ortiz Gaming.
Jogos
Tecnologias
- Front-End com JavaScript e TypeScript, webpack, gulp. PhaserJS é o principal framework.
- Usando padrões de arquitetura criativos para fazer manutenção e implementações no game framework autoral da própria empresa feito no topo do PhaserJS.
- Criação de comportamento de debug durante o tempo de execução do jogo com uma GUI para otimizar a produção e manutenção do jogo.
- Implementação e manutenção em AJAX para carregar assets e solicitar os valores de sorteio, dados do jogador do jogo, etc.
- Implementação e manutenção nos templates dos games com JSON; comportamentos JSON automatizados para cada jogo; carregamento de scripts para cada jogo com lazy load.
- Criação de scripts automatizados para a equipe de arte para fazer uma melhor produção dos recursos de arte dos jogos.
- Uso de orientação a objeto e o paradigma funcional seguindo clean code e SOLID.
Desenvolvedor de Jogos NFT e Desenvolvedor Web Full Stack (Freelance)
Novembro, 2021 - Dezembro, 2021
Remoto - San Francisco, California, Estados Unidos em OniSquad
Oni Mansion é um jogo de NFT multiplayer online casual onde o jogador pode decorar sua casa com decorações assustadoras e assombrar a casa se outros jogadores.
Jogo
Tecnologias
- JavaScript + Jsdoc no gameclient usando PhaserJS, web3.js e VueJS.
- JSON para a configuração de layout do gameclient.
- NodeJS com JavaScript e Jsdoc no gameserver com ExpressJS, Sequelize, JWT e libs da web3 e Postgres no banco de dados.
- Postgres no banco de dados.
- Aplicação do uso de devnet na blockchain e interações com smart contract no front-end com web3.js.
- Uso de orientação a objeto e o paradigma funcional seguindo clean code e SOLID.
Desenvolvedor de Jogos NFT e Desenvolvedor Web Full Stack (Tempo Integral)
Abril, 2022 - Fevereiro, 2023
Remoto - Inglaterra em Solport.io
Solstead Surreal World é um jogo de NFT Web-based social multiplayer online com gameplay semelhante a Club Penguin onde o jogador tem um personagem NFT e pode comprar um terreno de NFT dentro de um metaverso.
Nota: O Solstead Surreal World que desenvolvi foi arquivado e sua base foi reutilizada para fazer os jogos Solstead Arcade.
Jogos
Tecnologias
- JavaScript com Jsdoc no gameclient com Vite, PhaserJS, SocketIO, colyseus, web3.js e VueJS. NodeJS.
- JavaScript com Jsdoc no gameserver com ExpressJS, Sequelize, JWT, colyseus e SocketIO.
- Implementação da arquitetura MVC + services no sevidor.
- Automação de componentes de UI e layouts com JSON no client.
- Interação em tempo real de jogadores com sistemas de salas e/ou canais com comunicação via eventos de rede.
- Consultas e requisições a Web3 API para carregar dados dos jogadores e interação dentro do 'metaverso' do jogo.
- Otimização de carregamento do client com lazy load e async load dos recursos do jogo.
- Seguindo tendências de clean code e SOLID sempre preferindo usar o paradigma funcional com a orientação a objeto.
Desenvolvedor de Jogos e Desenvolvedor Web Full Stack (Tempo Integral)
Novembro, 2023 - Dezembro, 2023
Remoto - São Paulo, São Paulo - Brasil em Blaze-1.bet
DESTAQUE: A "empresa" não remunerou os empregados e sofremos calote, então decidi deixar a minha parte do projeto open-source.
Jogo
Tecnologias
- TypeScript com PhaserJS, ReactJS, NestJS, SocketIO e Prisma.
- Interação em tempo real de jogadores com sistemas de salas e/ou canais com comunicação via eventos de rede e websockets e matchmaking.
- Arquitetura própria limpa e organizada baseada em Entity-Rule-Manager.
- Seguindo tendências de clean code e SOLID sempre preferindo usar o paradigma funcional com a orientação a objeto.
Membro ativo da comunidade open-source
2015 - Agora
São Paulo, São Paulo - Brasil em GitHub de Ivopc
Contribuo ativamente nas comunidades de desenvolvimento, já achei problemas em projetos amplamente utilizados a nível profissional (exemplos: SocketCluster e Phaser 3), tenho ferramentas open-source disponíveis em meus repositórios e já acumulei mais de 100 estrelas no meu GitHub.
Desenvolvedor de Jogos e Desenvolvedor Web Full Stack
Abril, 2016 - Agora
São Paulo, São Paulo - Brasil em Monster Valle
Monster Valle é um jogo de MMORPG completo com lutas baseadas em turno e monstros colecionáveis. O jogo rendeu muita propriedade ao meu nome como profissional e graças a ele arranjei trabalhos no exterior.
Mecânicas notáveis: batalha, farming, PvP, mercado de jogadores, missões, interações multiplayer em tempo real, aprendizado de ataques de monstros e aumento de nível, party, itens, enredo, sistemas de RPG no geral, etc.
A versão antiga, que atualmente está disponível para testar o jogo, sem fins comerciais e com alguns bugs, tornou-se open-source e seu código está disponível aqui. Estou trabalhando em uma versão do jogo totalmente nova e refeita do zero.
Tecnologias
- No front-end trabalhando com VueJS para fazer o dashboard e PhaserJS para fazer o gameclient.
- No back-end NodeJS com ExpressJS e SocketIO, para banco de dados MySQL e RethinkDB.
- Para suporte à mobile, Cordova (NativeScript foi descartado devido ao suporte a WebGL) e desktop, Electron.
- Em uma solução criativa, uma `linguagem de script` foi construída em cima do JSON para automatizar o gameclient/gameserver, a maioria do jogo é totalmente automatizada: level design, UIs, batalha, processos de rede. Um padrão de arquitetura próprio foi criado para tornar o desenvolvimento e a manutenção fáceis e claros. Criei soluções criativas que economizaram muitos meses de trabalho manual e o jogo poderia se tornar um mecanismo de jogo facilmente personalizável, semelhante a mecanismos como Construct, RPG Maker e GDevelop. Muita otimização no carregamento do jogo, claro, porque estou em uma plataforma web onde os recursos não podem ser carregados todos de uma vez, muitas soluções criativas envolvendo carregamento dinâmico.
- Estou trabalhando em uma nova versão do jogo utilizando TypeScript, PhaserJS 3, NuxtJS, NestJS, SocketIO, TypeORM e JWT.
Desenvolvedor Web Full Stack
Junho, 2023 - Agora
São Paulo, São Paulo - Brasil em Open Rifinha
Open Rifinha é um sistema web de rifas que envolve meus conhecimentos diretamente relacionados a desenvolvimento web utilizando o sistema de pagamento do Mercado Pago via PIX.
No website disponível ao público tem: página inicial onde mostra os prêmios disponíveis e os ganhadores dos sorteios passados de maneira resumida. Menu de navegação incluindo: todos os sorteios atuais e já feitos; todos os ganhadores; consultar as compras do cliente. Rodapé com as demais informações, redes sociais e contato direto com o administrador.
- Compra da rifa: o cliente pode escolher o número de rifas que ele comprará na modalidade de escolha randômica ou de escolher o número das rifas e um PIX com QR Code é gerado e o sistema dará baixa automaticamente quando o PIX cair, já incluindo um sistema de promoção referente ao número de bilhetes que o cliente comprou configurado na dashboard administrativa.
- Ganhadores: Lista de todos os ganhadores do sorteio.
- Bilhetes do cliente: cliente pode fazer consultas ao estado atual das compras que ele solicitou.
Dashboard administrativa: login; índice mostrando as estatísticas gerais das vendas; gerenciar sorteios; gerenciar compras dos bilhetes; ranking detalhado de vendas; gerenciar layout do website; configurações gerais.
Tecnologias
- Front-end: VueJS, NuxtJS, Tailwind CSS e TW Elements.
- Back-end: strapi, Mercado Pago API, node-cron e p-queue.