What are the responsibilities and job description for the Full Stack Engineer position at OUTCOMES OPERATING INC?
Job Details
Description
JOB SUMMARY
The Software Engineer II is a full-stack developer proficient at working in all layers of complex software applications. This engineer works on an agile product development team as a hands-on contributor and collaborator who can become the go to person for features or components of technology solutions which transform healthcare into a safer and more cost-effective industry.
ESSENTIAL DUTIES & RESPONSIBILITIES
Software Development
Create high quality software features and components that integrate into complex software solutions. Develop software that fulfills requirements, is readable, maintainable, testable, and performant using standard idioms and common software craftsmanship techniques. Pair with other engineers and apply clean code techniques to produce high quality code.
Testing & Quality Assurance
Create and understand the importance of appropriate testing strategies for features. Create appropriate unit, integration, and automated acceptance tests for features based on requirements. Utilize test-driven development to guide development.
Data Management
Devise data storage and access strategies during development work. Use knowledge of data modeling, data storage, and data transmission techniques to make appropriate design decisions. Contribute to data import, export, and analytics initiatives.
Operations
Create highly dependable software features through use of operationalization development techniques such as monitoring, logging, metrics gathering, system health, and reporting. Identify, diagnose, and address issues using operational data and tools.
Security & Compliance
Develop software with a security-first mindset using knowledge of standard security protocols and common security risks, secure coding techniques, and appropriate usage and protection of sensitive information such as PHI.Identify potential security issues during requirements analysis, development, and threat modeling discussions.
Product & User Experience
Develop software features with user experience in mind. Follow existing UX guidelines and identify opportunities to improve user experience. Extend and enhance user-facing software effectively using knowledge of best practices and an appreciation for tech and design debt.
Requirements & Design
Translate technical specs into business context even when working with ambiguous requests or partial information. Make cost-effective feature design decisions and extend application architecture at appropriate points.
Qualifications
KNOWLEDGE & REQUIREMENTS
- Highly motivated, self-learner, and technically inquisitive
- One or more server-side programming languages (Java with Spring Boot experience preferred)
- One or more client-side programming languages (JavaScript React experience preferred)
- Experience developing, deploying, and supporting REST services and microservices
- Experience using cloud services for concepts such as storage and compute. Capable of applying infrastructure as code practices. Experience with AWS preferred.
- Experience with relational databases. Experience with non-relational databases and messaging systems a plus.
- Provides a positive impact on team: influences team decisions, mentors peers, drives innovation
- Excellent written and verbal communication skills
- Travel Requirements: Domestic and/or International, up to 25%
EDUCATION & EXPERIENCE REQUIREMENTS
- Minimum years of work experience: 3 years
- Minimum level of education or education/experience: Bachelors or equivalent work experience in Computer Science, Computer Engineering, Electrical Engineering, Information Systems, IT
#LI-AS1