[{"data":1,"prerenderedAt":299},["ShallowReactive",2],{"slug-content-en-\u002Fexperience\u002Fpenguin-network":3},{"kind":4,"item":5,"categories":76,"projects":217},"experience",{"id":6,"title":7,"body":8,"company":29,"dateEnd":30,"dateStart":31,"description":32,"extension":33,"featured":34,"highlights":35,"location":39,"meta":40,"navigation":41,"path":42,"projects":43,"role":46,"seo":47,"sideGig":41,"stem":48,"tags":49,"__hash__":75},"experience_en\u002Fexperience\u002Fpenguin-network.md","Penguin Network",{"type":9,"value":10,"toc":25},"minimark",[11,19],[12,13,14,15,18],"p",{},"The PenguinNetwork provides various modded Minecraft servers.",[16,17],"br",{},"\nThe entire infrastructure is hosted on our own hardware in colocation facilities.",[12,20,21,22,24],{},"We also develop our own applications to simplify management and give players the best possible experience.",[16,23],{},"\nWith ~100 unique players per day and ~1,600 Discord users, we are one of the larger modded Minecraft server networks.",{"title":26,"searchDepth":27,"depth":27,"links":28},"",2,[],"Penguin Network (Self-employed)","9999-99","2025-01","The PenguinNetwork provides various modded Minecraft servers.\nThe entire infrastructure is hosted on our own hardware in colocation facilities.","md",false,[36,37,38],"Orchestration of numerous game servers","Negotiations with partners","Conceptualization and development of a complex IT infrastructure",null,{},true,"\u002Fexperience\u002Fpenguin-network",[44,45],"dukcc-bot","routing","Founder & Developer",{"description":32},"experience\u002Fpenguin-network",[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],"nuxt","javascript","typescript","java","jvm","go","networking","linux","docker","rabbitmq","cloudflare","aws","oidc","deno","vuejs","laravel","tailwindcss","html5","sqlite","nodejs","symfony","nginx","terraform","git","cicd","Iq_Mj6n4mM299YXn_fprlu0aWNO_gvfF-Uts_tLGycc",[77,85,104,125,153,165,175,183],{"name":78,"items":79},"Databases",[80,83],{"slug":81,"name":82},"sql","SQL (MySQL, MariaDB)",{"slug":68,"name":84},"SQLite",{"name":86,"items":87},"Frontend",[88,90,93,95,98,101],{"slug":67,"name":89},"HTML5",{"slug":91,"name":92},"css3","CSS3",{"slug":66,"name":94},"Tailwind CSS",{"slug":96,"name":97},"bootstrap","Bootstrap",{"slug":99,"name":100},"uikit","UIkit",{"slug":102,"name":103},"extjs","Ext JS",{"name":105,"items":106},"JavaScript Ecosystem",[107,109,111,113,115,117,120,123],{"slug":51,"name":108},"JavaScript",{"slug":52,"name":110},"TypeScript",{"slug":69,"name":112},"Node.js",{"slug":64,"name":114},"Vue.js",{"slug":50,"name":116},"Nuxt.JS",{"slug":118,"name":119},"react","React",{"slug":121,"name":122},"next","Next.JS",{"slug":63,"name":124},"Deno",{"name":126,"items":127},"PHP Ecosystem",[128,131,133,135,138,141,144,147,150],{"slug":129,"name":130},"php","PHP",{"slug":65,"name":132},"Laravel",{"slug":70,"name":134},"Symfony",{"slug":136,"name":137},"laminas","Laminas",{"slug":139,"name":140},"mezzio","Mezzio",{"slug":142,"name":143},"zend","Zend Framework",{"slug":145,"name":146},"wordpress","WordPress",{"slug":148,"name":149},"shopware","Shopware",{"slug":151,"name":152},"spryker","Spryker",{"name":154,"items":155},"Mobile",[156,159,162],{"slug":157,"name":158},"dart","Dart",{"slug":160,"name":161},"flutter","Flutter",{"slug":163,"name":164},"android","Android",{"name":166,"items":167},"Other Languages",[168,170,173],{"slug":53,"name":169},"Java",{"slug":171,"name":172},"python","Python",{"slug":55,"name":174},"Go",{"name":176,"items":177},"Operating Systems",[178,180],{"slug":57,"name":179},"Linux",{"slug":181,"name":182},"windows","Windows",{"name":184,"items":185},"Other",[186,188,190,193,195,197,199,201,204,206,208,210,213,215],{"slug":73,"name":187},"Git",{"slug":58,"name":189},"Docker",{"slug":191,"name":192},"jenkins","Jenkins",{"slug":54,"name":194},"JVM",{"slug":61,"name":196},"AWS",{"slug":60,"name":198},"Cloudflare",{"slug":71,"name":200},"Nginx",{"slug":202,"name":203},"redis","Redis",{"slug":56,"name":205},"Networking",{"slug":59,"name":207},"RabbitMQ",{"slug":62,"name":209},"OIDC",{"slug":211,"name":212},"rest","REST",{"slug":72,"name":214},"Terraform",{"slug":74,"name":216},"CI\u002FCD",[218,271],{"id":219,"title":44,"body":220,"dateEnd":30,"dateStart":31,"description":264,"extension":33,"featuredInCv":34,"link":39,"meta":265,"navigation":41,"path":266,"repo":39,"seo":267,"stem":268,"tags":269,"__hash__":270},"projects_en\u002Fprojects\u002Fdukcc-bot.md",{"type":9,"value":221,"toc":261},[222,227,233,255],[223,224,226],"h2",{"id":225},"about-the-project","About the Project",[12,228,229,230,232],{},"dukcc-bot is a Typescript-based Discord bot that provides many proprietary features for the PenguinNetwork.",[16,231],{},"\nThese include",[234,235,236,240,243,246,249,252],"ul",{},[237,238,239],"li",{},"Automatic role assignment based on playtime",[237,241,242],{},"Role synchronization between game servers and Discord",[237,244,245],{},"Linking game accounts and Discord accounts",[237,247,248],{},"Automated management of giveaways based on users' playtime",[237,250,251],{},"Discord invite tracking system to assess advertising effectiveness",[237,253,254],{},"REST interfaces for integration with other services, such as the website",[12,256,257,258,260],{},"This project also includes a counter-part in Java, which is responsible for the game server side of the bot.",[16,259],{},"\nIt communicates with the bot via RabbitMQ and Rest APIs.",{"title":26,"searchDepth":27,"depth":27,"links":262},[263],{"id":225,"depth":27,"text":226},"A Typescript-based Discord bot + backend for the PenguinNetwork.",{},"\u002Fprojects\u002Fdukcc-bot",{"title":44,"description":264},"projects\u002Fdukcc-bot",[52,53,63,211,58,59,81,73,74],"M1O6fT30qkqSjoNU17TL3KmpXMe-ayUuuB024d7X-cE",{"id":272,"title":45,"body":273,"dateEnd":289,"dateStart":290,"description":291,"extension":33,"featuredInCv":34,"link":39,"meta":292,"navigation":41,"path":293,"repo":294,"seo":295,"stem":296,"tags":297,"__hash__":298},"projects_en\u002Fprojects\u002Frouting.md",{"type":9,"value":274,"toc":286},[275,277],[223,276,226],{"id":225},[12,278,279,280,282,283,285],{},"Routing is a Terraform configuration that represents the routing infrastructure of the PenguinNetwork.",[16,281],{},"\nIt handles the automatic creation and provisioning of Hetzner Cloud servers.",[16,284],{},"\nThese servers are used to actively steer player traffic and thereby avoid unfavorable intercontinental routes.",{"title":26,"searchDepth":27,"depth":27,"links":287},[288],{"id":225,"depth":27,"text":226},"2026-03","2025-07","A tool for automatically creating and provisioning Hetzner Cloud servers.",{},"\u002Fprojects\u002Frouting","https:\u002F\u002Fgithub.com\u002FThePenguinsGit\u002Frouting",{"title":45,"description":291},"projects\u002Frouting",[211,73,72,61],"7VbwOJG38ceNq9AUKZUtVhJYO7NyzIEN6ioChtIOPKg",1783417754785]