Develops highly complex and performance tuned software applications and modifies/maintains any existing C# based software. Actively participates in application design and programming activities with other technical staff members. May work alone or may lead teams with more junior software engineers. Devises or modifies procedures to solve complex problems considering computer equipment capability and limitations, operating time and customer desired results. Designing with an emphasis on package reuse and big picture mentality is a must.
- Experience with RESTful APIs and JSON
- Familiarity with Microsoft Azure, Kubernetes, Docker, NodeJS
- Strong understanding and experience with services-based development
- Experience and understanding of “bus” communication for inter-service communication
- Visual Studio and related .NET development tools
- Designs/programs back-end applications using SQL and NoSQL databases
- Must be self-motivated.
- Responding promptly and professionally to bug reports.
- Review and repair legacy code.
- Good understanding of the Agile methodology
- Responsible for developing new programs and proofing the program to develop needed changes to assure production of a quality product.
- Responsible for development of new programs, analyzes current programs and processes, and making recommendations which yield a more cost-effective product.
- Design and development of new systems with an emphasis on minimized maintenance requirements, as well as maintenance and enhancement of existing systems. Systems analysis design and debugging of new systems.
- End-user interfacing for the purpose of design and implementation of new systems and trouble-shooting problems with existing internal systems.
- Plans and executes testing and implementation of major systems while working with the QA team.
- Responsible for reading, understanding, and utilizing all business requirements, specification sheets, and technical references.
- Expected to conduct system analysis and development to keep our systems current with changing technologies.
- Responsible for analysis of current programs including performance, diagnosis and troubleshooting of problem programs, and designing solutions to problematic programming.
- Participates in establishing project plans and project management guidelines. Supports their implementation.
- Develops, implements, and tests all system implementations within product line
- Provides technical input to other areas and gathers technical data from outside organizations.
- Responsible for utilizing tools and equipment involved in performance of essential functions of programming including measuring instruments.
- Search, summarize and keep the team abreast of strategic information from all sources
- Strong and effective inter-personal and communication skills and the ability to interact professionally with a diverse group of team members.
- Research and recommend software tools to management.
- Bachelor degree in Computer Science or equivalent experience
- 5-10 years experience in software development environments using C#, Web, and MySQL.
- Minimum three (3) years of experience with relational database dependency on MySQL Server. NoSQL experience a plus.
- Background in technologies such as client/server, relational database management systems, object-oriented development, Angular 5+, design patterns, Azure Cloud, NodeJS, RESTful APIs, application servers.
- Experience in microservice/services-based development
- 5-10 years business experience in a high technology area, 5 or more years programming and/or systems analysis experience is preferred.
- Previous experience providing program design and system development services on systems projects.
Good communication and customer service skills.
- C# skills required
- Prior healthcare experience a plus