InpharmD is a company focused on helping healthcare providers make better clinical decisions through data. They are seeking a Computer Programmer to design and maintain automated test cases, collaborate with teams to ensure security and quality, and develop scalable systems and microservices.
Responsibilities:
- Design and maintain automated test cases (unit, integration, and functional tests) to validate microservices and APIs using RSpec and other testing frameworks
- Establish and monitor automated test pipelines using Travis CI integrated with GitHub, ensuring early detection of defects during the development lifecycle
- Collaborate with the Security team to identify vulnerabilities and implement validation checks and fraud detection measures
- Conduct code reviews with a focus on test coverage, quality assurance standards, and best practices for maintainable and secure code
- Contribute to backlog refinement and sprint planning by identifying testing needs, acceptance criteria, and suggesting improvements for better testability
- Design, develop, and deploy scalable and highly available systems and microservices, ensuring secure access to web-based UIs and APIs
- Implement new features and enhancements according to system performance, redundancy, observability, and security requirements
- Develop Ruby on Rails applications, building efficient backend services, integrating third-party APIs such as Twilio, SendGrid, and Stripe for communication and payment processing systems
- Design and develop Voice Assistant integration for InpharmD Mobile Applications, ensuring seamless performance across platforms
- Implement Test-Driven Development (TDD) methodologies by writing test cases alongside feature development to ensure robust and reliable code
- Document system architectures, APIs, and development workflows, promoting a culture of maintainability and technical excellence
- Mentor and support junior developers, encouraging best practices in coding, testing, and system design
- Optimize and refactor existing systems for improved performance, scalability, and reliability
- Gain deep understanding of the application architecture, business rules, and data persistence models, and drive improvements based on this knowledge
- Actively participate in Agile processes — sprint planning, daily stand-ups, sprint reviews, and retrospectives — while driving forward development goals