ShiftWise technologists are passionate crafts people. We are deeply interested in scalable, distributed development. We embrace agile development and love shipping code in every iteration. We like finding better ways to work. We continually improve what we do and how we do it.
People on our team are always learning about technology, our customers, and our business. Our customers' experiences are just as important as the way we code. Our culture values creativity and collaboration. We foster an environment where all voices are heard, because we understand that diverse opinions and backgrounds lead to better solutions and more opportunities to push us forward.
If you want to make a real impact at a thriving, growing company in downtown Portland, if you want to be at a place that wants to hear your ideas and expects you to bring your best each and every day, a place big enough to provide interesting challenges but small enough where you can make a meaningful difference, we'd love to talk with you!
Collaborate closely with team members to develop partnerships and build quality software to improve existing features and add new features.
Contribute to the architecture, design, and implementation of a highly secure and scalable distributed commercial software product in a SaaS environment.
Present technical issues and their impact. Identify, compare, and contrast implementation choices based on facts and SOLID engineering principles.
Provide expert advice and hands-on implementation guidance in discussions involving source control management, configuration management, continuous integration, and continuous delivery.
Document your solutions in a way that is simple to consume and understand by other engineers.
Stay informed of standard methodologies, team coding standards, and company processes.
Increase proficiency through study, training sessions, and educating peers.
Serve on a rotation-basis to help with any production issues where engineering product support help is required. Provide expert assistance in troubleshooting/investigations.
Coordinate the technical tasks breakdown for the development of the software application and/or interfaces, components.
Working under the direction from the Enterprise Architect and/or Solutions Architect, drive and own the implementation of the architecture diagrams and technical plans.
Evangelize and own the standardization, within the team, of technology and libraries following the policies and standards established by the Enterprise Architect and according to AMN Information Security Policy and Procedure
As needed, work with Product Managers, Project Managers, Analysts and Stakeholders on requirement refinements or inquiries so that stories in Team's backlog meet the Definition of Ready (DoR).
Surface and drive to completion risks and cross functional team dependencies in a timely manner.
Act as a technical mentor for the developers on the team, utilizing deep depth and breadth of technical knowledge, in order to guide the team into making high quality technical decisions and help them grow and mature as software engineers.
Leveraging strong technical skills, develop or supervise the implementation of architecturally significant components of the software system and/or interfaces.
Understand the broader business goals, since their implementation work has implications beyond the current component a developer may be tasked with.
Be transparent about the status of the developer's stories and detect any stories that may be at risk from meeting a Sprint commitment.
Effectively communicate the technical issues/decisions to the Project Manager and Business Stakeholders by utilizing business terms.
Effectively and immediately communicate to Engineering Management, regarding any technical or team challenges that put deliverables at risk of meeting timelines or concrete objectives.
Work with your team to identify issues or improvements to the software and propose solutions for addressing any found issues.
Mentor the team to improve and measure on quality metrics such as code coverage, cyclomatic complexity, reduction of coupling dependencies and adequate usage of Design Patterns when needed.
You have the following experience and abilities:
Experience creating and implementing secure, distributed RESTful services in an Event Driven Architecture
A solid background with UML, Domain Driven/Object Oriented Design patterns and principles such as Bounded Context/SOLID, as well as concurrency, resiliency, caching and HTTP.
Experience with development, maintenance, and operations of native Cloud based solutions (AWS/Azure), including serverless, application containerization and cluster orchestration.
Experience writing automated tests, including TDD, BDD, and functional testing
4+ years working directly with Continuous Integration and Continuous Delivery pipelines of any variety.
An understanding of database architecture for both SQL and NoSQL systems, and ORMs.
Expertise in server configuration management and familiarity with configuration management tools (e.g., Chef, Puppet, Ansible, or similar; or, experience maintaining an in-house equivalent).
A thorough understanding of IaaS, PaaS and SaaS architecture leveraging AWS or Azure.
Competence with package management tools such as NuGet, npm.
Ability to quickly learn new tools, strong diagnostic skills, and strong written and verbal communication skills.
Git SCM, Team Foundation Version Control (TFVC).
Experience with command-line environments such as Bash and PowerShell
Third-party deployment tools such as Octopus Deploy, Firebase, and Web Deploy, and/or experience with deployment pipelines that do not require such tools
Familiarity with Jenkins, Travis CI, TeamCity, TFS Build, VSTS or similar.
Experience with AWS CloudFormation, Terraform, Azure ARM Templates or similar.
Expert level experience with container technologies such as Docker, Kubernetes, EKS, ECS, Elastic Beanstalk, Fargate and/or Azure App Services in a SaaS production environment.
Expertise with integrating security concepts into the Secure Development Lifecycle (SDL) and implementing those concepts in a Continuous Integration and Continuous Delivery Environment.
Experience using .NET Classic (4.6+) and/or .NET Core 2.x in a production environment.
Extensive experience with front end frameworks: Angular 2+ with TypeScript, CSS3, HTML
Respect Passion Continuous Improvement Trust Customer Focus Innovation
AMN Healthcare is an EEO/AA/Disability/Protected Veteran Employer
We encourage minority and female applicants to apply
AMN Healthcare is committed to fostering and maintaining a diverse team that reflects the communities we serve. Our commitment to the inclusion of many different backgrounds, experiences and perspectives enables our innovation and leadership in the healthcare services industry.
We value professionalism in everything we do this includes the professional presence we project as we interact with internal and external customers.