Bachelor's degree in Computer Science, Information Technology, or equivalent experience. Minimum of 5 years of experience in developing complex software applications in a commercial environment. Advanced proficiency in C# (preferred) or Java, with a strong understanding of object-oriented design principles and software architecture. Deep understanding of the Software Development Life Cycle (SDLC) and agile methodologies. Experience with relational databases (e.g., MySQL, SQL Server, Oracle) and optimizing database interactions. Strong knowledge of security best practices, including secure coding principles and compliance requirements (e.g., OWASP Top Ten, PCI, SOC2, HIPAA). Proficient in networking concepts such as sockets, HTTPS, DNS, and SSL. Deep knowledge of design patterns and their practical application. Proven ability to work independently while also fostering teamwork and cross-team collaboration. Demonstrated ability to mentor junior engineers and contribute to the growth of the engineering team. Strong problem-solving skills, with the ability to anticipate potential issues and proactively address them. Excellent communication skills, capable of explaining complex technical concepts to both technical and non-technical stakeholders.