As a software engineer at Shift, you will work directly with our clients to understand their vision and develop solutions that achieve them. You will be involved throughout the entire development process – from gathering requirements to architecting, developing, and thoroughly testing applications. You will work in a team-based environment where you will apply agile principles to iteratively and rapidly create products that the clients will love. Given the wide variety of technology you will work with, it is important that you embody a full-stack mentality and don't have any fear of stepping outside of your comfort zone. You should have strong experience in frontend, backend, DevOps, and cloud platforms. You must be dependable, possess strong communication skills, and take a pragmatic approach to problem-solving. At Shift Interactive, we believe in: Getting it Done: Persevering through challenges to deliver impactful solutions for our clients. Continuous Learning: Growing ourselves and others through collaboration, mentoring, and sharing knowledge. Technical Excellence: Leaving software better than we found it and striving for solutions that are simple, scalable, and well-crafted. Transparency: Being open and honest in our communication, both internally and with clients. Humility: Understanding our clients’ needs and balancing technical decisions with business value You should love what you do and strive to share that passion with others. This is a remote, Iowa-based position. Responsibilities Collaborate with clients to understand their goals and requirements. Design, develop, and maintain applications throughout the software development lifecycle. Maintain high standards in code quality through the adoption of practices like Test-Driven Development (TDD), and clean code methodologies. Follow established coding standards and industry best practices. Partner with UI/UX designers to deliver a seamless user experience. Analyze existing business processes and recommend improvements. Required Skills and Experience: Backend Development: Strong experience in Ruby and Ruby on Rails framework. Frontend Development: Proficiency in React, with experience in other frontend technologies. Programming Paradigms: Have experience with one or more programming design paradigms (e.g. Object-oriented, Functional, etc.). Test Automation: Experience building comprehensive test automation suites. Clean Code Principles: Ability to write simple, maintainable code using practices like TDD, DRY, SOLID, and YAGNI. Software Design: Experience with understanding and implementing different design patterns and architectures and the problems they solve. Refactoring: Experience with recognizing various code smells and refactoring them safely. Collaboration and Ownership: Foster collaboration and collective ownership of code and outcomes within the team. Communication and Visibility: Proactively communicate progress and issues to the team and stakeholders, managing expectations effectively. Bonus Points Experience with DevOps automation tools (e.g., Ansible, Terraform) Familiarity with cybersecurity principles and tools Experience with performance testing and optimization Experience making safe changes to legacy systems using techniques like finding seams, breaking dependencies, and characterization tests. Located in Iowa, preferably in the Des Moines area

Salary

Competitive

Project Basis based

Remote Job

Worldwide

Job Overview
Job Posted:
1 year ago
Job Type
Contractual
Job Role
Any
Education
Any
Experience
Any
Total Vacancies
-

Share This Job:

Location

United States