We are seeking a detail-oriented, highly analytical Junior Systems Software Engineer to join our core engineering team. In this role, you will design, implement, and optimize low-level application architecture, networking protocols, and performance-critical systems. The ideal candidate brings a strong foundation in computer science fundamentals, hands-on experience with C++ and Python, and a passion for building responsive, scalable software.
Key Responsibilities:
Systems & Network Architecture:
Design, implement, and maintain custom networking components, client-server models, and protocol resolvers (UDP/TCP, DNS, socket communications).
Algorithm & Performance Optimization:
Apply data structures, memory management, and graph search heuristics (e.g., A
- , custom hashing, priority queues) to solve complex performance and indexing challenges.
Testing & Quality Assurance:
Develop and execute comprehensive unit, integration, and stress tests to validate network state synchronization, catch edge cases, and eliminate execution bottlenecks.
Debugging & Problem Solving:
Utilize low-level debugging tools (GDB, Wireshark) to trace memory leaks, analyze packet flow, and debug asynchronous multi-threaded or multi-client execution paths.
Cross-Functional Collaboration:
Partner with cross-functional teams to design clean, modular codebases and maintain version control integrity across all release cycles.
Key Requirements:
Education:
Bachelor of Science in Computer Science, Computer Engineering, or a related technical discipline (GPA 3.5+ preferred).
Core Languages:
Strong proficiency in C++ and Python . Familiarity with C, C#, Java, SQL, or x86 Assembly is a plus.
Systems & Networking:
Solid understanding of TCP/UDP networking principles, socket programming, caching mechanisms, operating systems, and computer architecture.
Tools & Environment:
Hands-on experience with Linux/Bash , Git/GitHub , GDB , and Wireshark . Experience with SFML, Unity, or VR/AR engines is desirable.
CS Fundamentals:
Proven command of object-oriented design, algorithmic complexity, recursive problem-solving, and concurrent state management.
Desired Competencies:
- Self-starter capable of managing end-to-end projects-from requirement mapping to comprehensive testing.
- Passion for interactive media, high-performance computing, or game engine mechanics.
- Strong written and verbal communication skills for technical documentation and code reviews.