Senior Software Engineer (C#/ASP)
- Full-time
Company Description
At KMS Technology, we are dedicated to delivering cutting-edge solutions and services that empower businesses to achieve their goals. Our team is composed of highly skilled professionals who are passionate about technology and innovation. We provide a dynamic and collaborative work environment where you can grow your career and make a significant impact.
Job Description
We are seeking a highly skilled and experienced Senior Software Engineer to design and build high-quality, reliable software solutions for laboratory automation systems. In this critical role, you will be responsible for developing the core services that facilitate secure, high-integrity data forwarding to external systems, leveraging modern messaging, API design, and security protocols. This position requires deep expertise in C# and robust database administration/integration across both MS SQL and PostgreSQL environments.
Responsibilities:
System Design & Development:
Design and develop high-quality, reliable laboratory automation software solutions using C#.
Architect and implement reliable forwarding of event data using message queue technologies (e.g., RabbitMQ and/or MQTT).
Create and maintain secure, high-performance RESTful APIs using the ASP.NET framework.
Integrate security protocols, specifically OAuth 2.0 & OIDC, into service and API designs to ensure secure data exchange.
Database and Infrastructure:
Design and implement integrated solutions with MS SQL and PostgreSQL databases.
Develop robust functionality for automated database maintenance and disaster recovery to ensure customer data integrity and system uptime.
Contribute to the development of accompanying web applications using modern frameworks (e.g., React, Angular, or Vue.js).
Engineering Excellence & Collaboration:
Apply advanced knowledge of Object-Oriented Programming (OOP), SOLID principles, and software industry methodologies to ensure high code quality.
Develop code with comprehensive unit tests to guarantee system stability and maintainability.
Collaborate effectively in a team environment and demonstrate the proven ability to successfully implement complex, end-to-end projects.
Qualifications
Required Experience & Technical Skills:
5+ years of professional experience in software development.
Expert proficiency in C# and deep understanding of modern software design patterns (e.g., SOLID).
Demonstrated experience designing and implementing RESTful APIs using ASP.NET and C#.
Hands-on experience with message queuing systems like RabbitMQ and/or MQTT.
Practical experience implementing authentication/authorization using OAuth 2.0 and OIDC.
Proficiency with PostgreSQL and/or MS SQL databases, including application development, administration, and performance optimization.
Experience developing modern user interfaces using at least one major web framework (React, Angular, or Vue.js).
Preferred Skills & Attributes:
3+ years developing Windows-based applications and services.
Familiarity with container orchestration technologies like Kubernetes and/or Docker.
Strong analytical and problem-solving skills, coupled with excellent verbal and written communication.
Additional Information
Location: Guadalajara, Jalisco, Mexico (working from home - office won't be mandatory all the time, rather it will required from time to time).