Senior Software Developer
Summary
Senior developer building and optimizing casino/gaming systems using C#, C++, Unity, and MS SQL, with a focus on architecture, scalability, and release management.
Key responsibilities
- Analyze and optimize existing system architecture, coding standards, and technology platforms.
- Develop and present architectural and functional improvement proposals to enhance system performance and scalability.
- Partner with Product Owners, Sales, and Operations teams to identify requirements for system upgrades, fixes, and new functionality.
- Lead hands‑on development, conduct code reviews, and enforce development best practices.
- Manage the complete software release lifecycle, including versioning, deployment coordination, and production validation.
- Author comprehensive technical documentation, including system specifications, developer guides, and internal references.
- Produce detailed release notes, user manuals, installation guides, and training documentation.
- Execute rigorous testing protocols (functional, regression, usability) prior to production deployment.
- Maintain production systems through bug resolution, compatibility remediation, feature implementation, and regulatory compliance updates.
Required Qualifications
- Bachelor's or Master's degree in Computer Science, Software Engineering, Information Technology, or related discipline.
- Minimum 6+ years of professional software development experience, or equivalent demonstrated expertise.
- Advanced proficiency in C# (preferably with Unity experience), C++, and MS SQL.
- Experience delivering and maintaining enterprise‑grade production systems.
- Deep knowledge of software architecture, system design principles, and industry best practices.
- Proven cross‑functional collaboration with Product, Operations, and business stakeholders.
- Exceptional problem‑solving capabilities, attention to detail, and technical communication skills.
Nice to Have
- Experience with casino systems or gaming platforms.
- Unity development or real‑time interactive application experience.
- Involvement in software release management and deployment processes.
- Proficiency in additional languages such as Java, Python, or equivalent, with demonstrate technology adaptability.