Cloud Imperium is looking for a Senior Server Engineer to work on our exciting PC space combat sim, Star Citizen!
• Design and implement high quality, reliable, scalable, secure server software and systems in C/C++
• Develop distributed server software that can scale to handle specified user counts
• Diagnose and correct performance problems and bugs in server code
• Apply computer security principles to client and server software to develop secure, cheat-resistant game code
• Design server and networking systems to work within CPU, memory, and disk and network IO budgets
• Profile and optimize server and network code relative to CPU, memory, and disk and network IO
• Work closely with DevOps and Operation to provide information, documentation, and tools needed by those groups to support servers in test and production environments
• Drive the development and evolution of the server infrastructure that powers Star Citizen.
• Contribute to the technical direction of the online team.
• Ensure that the online team adheres to established coding standards and embraces efficient and robust engineering practices.
• Collaborate with production and other leads to develop tasks and schedules for the online team.
• Ensure that all technology interests and policies are properly represented and maintained through the course of development.
• Serve as an active partner in the game team’s leadership.
• Diagnose and fix complex player-impacting problems on the live game servers.
• Performance measuring and optimizations.
• Support patch and new content deployment
• Create and deploy server hotfixes when needed
• Implement instrumentation and testing strategies to ensure correct functionality of features.
• Architecture of a robust system that can scale with the long-term growth of the game project.
• A minimum of 10 years of programming experience.
• A minimum 5 years with C/C++
• Experience working in the Video Game industry on Multiplayer games
• Experience with multi-threaded programming and distributed systems.
• Experience implementing scalable client/server architectures
• Working knowledge of network and server security issues.
• Experience implementing TCP/UDP networking.
• Familiarization with code and data optimization.
• Excellent verbal and written communication skills.
• Ability to develop coding solutions with simple, elegant, and easy-to-maintain code.
• Skilled at diagnosing and fixing crashes, deadlocks, stack overflows, and heap corruption.
• Passion for space simulations and science fiction.
• Computer Science or related degree.
• Database development experience (MySQL, Oracle).
• Low-level network knowledge and diagnosis including packet capture (tcpdump, wireshark), routing, firewalls, DHCP, DNS, NAT busting.
• Familiar with higher-level network protocols such as HTTP, SNMP, SMTP, FTP
• Passion for technology.
Please Note: Individuals submitting resumes or otherwise responding to employment opportunities are NOT considered applicants until they apply for a particular position and have been invited to complete the company's employment application.