Job
Description
As a Senior Software Developer at Cayley, you will have the opportunity to showcase your expertise in C# and JavaScript while contributing to the success of our projects. With 3-5 years of experience, you will play a pivotal role in designing, writing, and maintaining code for both new and existing initiatives. Your collaboration with various teams will be essential in delivering robust and scalable solutions. **Responsibilities:** - Collaborate with developers to design algorithms and flowcharts for efficient coding solutions. - Produce clean, efficient, and reliable code based on project specifications. - Integrate software components and third-party programs into our existing solutions. - Verify, test, and deploy programs and systems to ensure high-quality releases. - Troubleshoot, debug, and optimize existing code to improve functionality and performance. - Gather and evaluate user feedback to refine and enhance software solutions. - Recommend and implement improvements to coding practices and design. - Create and maintain comprehensive technical documentation. - Regularly review and refactor existing code to ensure scalability, maintainability, and performance. - Work closely with frontend developers, designers, and product managers to deliver a seamless and high-quality user experience. **Requirements & Skills:** - Develop and maintain scalable and maintainable backend systems using architectures such as MVC and Microservices. - Design, build, and maintain efficient, reusable, and reliable code using C#, JavaScript, and other programming languages such as Java and Python (Python is a plus). - Implement best practices in Object-Oriented Programming (OOP), SOLID principles, Design Patterns, and Data Structures to ensure high-quality code. - Develop and optimize complex SQL queries and design relational database structures (minimum 2 years of experience with SQL and NoSQL). - Utilize containerization and orchestration tools like Docker and Kubernetes to manage and deploy applications. - Work with Ocelot and Poly to build reliable microservices and leverage messaging systems such as RabbitMQ for asynchronous programming. - Design and consume RESTful APIs using ASP.NET Core Web API and Express to enable seamless integration between services. - Write unit tests using frameworks like NUnit or xUnit.net to ensure code reliability and coverage. - Implement caching strategies to enhance application performance and reduce latency. - Use Git or similar version control systems for efficient code management and collaboration. - Leverage Microsoft Azure services, including App Service, SQL, Cosmos DB, Service Bus, Event Hub, and Virtual Machines for cloud-based development and deployment. **Preferred Skills:** - Experience with React (minimum version 16.10). - Familiarity with Agile development methodologies. - Ability to quickly learn new technologies and languages. If you have the passion for technology and thrive in a dynamic, collaborative environment, we'd love to hear from you!,