At CPSI you will be a part of a team of experienced IT professionals tasked with creating applications and products to support the rural healthcare market of Hospitals, Clinics and Long Term Care Facilities. Leveraging an Agile development methodology that provides the ability to react to ever changing Regulatory and Market requirements we develop using a technology stack consisting of:
- Java to Microsoft C# .NET and ASP.NET
- SPA (Single Page Architecture), Dependency Injection and IOC (Inversion Of Control)
- REST/Hypermedia and SOA (Service Oriented Architecture)
- PostgreSQL and Microsoft SQL Server / Entity Framework Agile development techniques and Scrum development processes
- Able to produce sophisticated, maintainable solutions to complicated problems in a timely manner.
- Excellent understanding of the SDLC processes and tools along with Agile practices.
- Demonstrates coding quality by having a low amount of defects in delivered solutions.
- Is familiar with CPSI companies system design, processes and possibility specific development tools. This role is able to make programming choices with production experience.
- Able to quickly narrow down the root cause of issues when troubleshooting with minimal assistance - rarely asking for help
- Begins approaching solutions to problems as the sum of multiple parts, not simply atomic tasks.
- Proficient in applying new patterns and techniques - able to produce "novel" (non-cookie cutter) code.
- Involved in design discussions from a technical standpoint, taking many factors into consideration.
- Able to take on responsibilities outside of the traditional engineer role when necessary.
- Takes initiative and demonstrates maturing development practices
- Proactively resolves conflicts and issues that arise as impediments to the development team.
CPSI's Brand Values are the driving force behind our company, our interactions with customers and our interactions with each other. While working for CPSI we want all employees to live the Brand Values: Collaborative: Working closely and methodically with our customers and each other to transfer knowledge and build practical skills. Dependable: Do what we say, own our problems, whatever the cause, and work diligently to provide solutions. Proactive: Anticipate the needs of others and are eager to apply our knowledge to help our customers and co-workers day in and day out. Empathetic: Understand the challenges and realities our customers and co-workers face. Listen, provide honest, straightforward answers and have their long-term interests in mind. Agile: Be responsive and flexible; you will need to constantly adjust to satisfy the needs of our customers and co-workers as well as the evolving needs of the healthcare marketplace.
These Goals and objectives are not to be construed as a complete statement of all duties performed; employees will be required to perform other job related duties as required. Goals and objectives are subject to change.
All activities must be in compliance with Equal Employment Opportunity laws, HIPAA, ERISA and other regulations, as appropriate.
Essential Functions: In addition to working as prescribed in our Performance Factors specific responsibilities of this role include:
- Work with Business Analysts, Software Engineers and Quality Analysts to implement market requirements and functional specifications
- Ensure that the modified and/or newly created application components interact appropriately
- Participate in quality reviews and ensure traceability of the application design changes to the requirements
- Analyze and design enhancements and fixes to application code
- Design and code applications in accordance with functional and technical programming standards
- Complete all appropriate technical documentation required to maintain the application
- Create a collaborative environment with other team members to ensure the team's overall effectiveness
- Demonstrates solid understanding of SDLC, development processes, and tools.
- Communicates changes to QA in an understandable fashion.
- Shows ability to make improvements to our products from an architectural perspective (big impact with little overhead).
- Able to adapt and apply design patterns.
- Maintains familiarity with industry patterns, technologies and techniques.
- May occasional lead a team/project
- Demonstrates technical leadership by helping a team coordinate multiple technical tasks to meet a common goal.
- Able to provide solutions for difficult to solve problems.
- Identifies and implements coding standards and policies. Communicates effectively to rest of team on the same.
- Involved in technical design discussions, providing feedback that contributes to an appropriate technical solution.
- Technical leadership and influence starts expanding beyond current team
- Able to grasp, apply and promote industry knowledge to others.
- Tackles non-apparent client issues independently or by leading team
- Effectively communicates design/technology to non-technical team members
- Expected to excel in 1 of these 3 areas:
(1) Experts in their chosen technology stacks. They are given the hard tasks (the ones nobody knows how to solve) and often get design responsibilities. They often work independently because they have a proven track record of delivering the goods.
(2) Expected to mentor Junior and intermediate developers.
(3) Amazing troubleshooter. They have run into those same problems before and have a very good idea of where to look first.
- Bachelor's degree in computer science or related field.
- 8 to 12 years of experience in the field.
- Working Knowledge of an Object Oriented programming language
- Ability to be flexible and work analytically in a problem-solving collaborative environment
- Excellent communication (written and oral) and interpersonal skills
- Strong organizational, multi-tasking, and time-management skills
- Must be detail oriented and able to follow through on issues to resolution
- Must be able to act both independently and as a team member
- Willingness to learn and accept mentoring