Software Engineer (Server)

Full-Time Westlake, Ohio

Create resilient, efficient backend systems to power mobile and web applications

Apply Now

Assurant Labs is looking for a thoughtful, adaptive individual with a growth mindset to join our growing team as a Software Engineer.

In this role, you will work closely with multiple product teams to create web and mobile client applications to serve customers with an engaging, dynamic user experience. We have seen people thrive in this role from a variety of backgrounds, but we work mostly in Ruby on Rails and React Native. This role is focused more on server development, so Rails experience is a plus, but not a requirement. Two engineers discussing their ideas

Responsibilities include solving problems, experimenting, and building features that we measure for value to our users. Candidates must have strong communication skills, the ability to manage multiple tasks efficiently, sound judgment, and the ability to be productive in a fast-paced, team-oriented environment.

Responsibilities
  • Build scalable, highly reliable product features
  • Design, implement, and maintain applications used by both mobile and desktop clients
  • Work closely with client developers to architect high-throughput systems
  • Create and maintain documentation pertaining to code and engineering processes
  • Work in a collaborative environment by occasional pair and/or mob programming
  • Communicating with Engineering Managers and Product Owners to plan and prioritize work and design technical solutions
  • Work in a cadence of two week sprints with daily stand-ups and bi-weekly retrospectives
  • Conduct design and code reviews
  • Grow subject matter expertise in programming, product, and platform
Requirements
  • Hands-on knowledge of version control systems such as Git
  • Ruby experience, or similar dynamic scripting language experience
  • Rails experience, or similar web framework experience
  • Experience with templating frameworks (e.g., Haml, ERb)
  • Experience with MySQL and relational database design
  • Knowledge of RESTful API design
  • Ability to demonstrate technical know-how through individual contributions, pair programming exercises, and architectural designs
  • Technical leadership skills with the ability to resolve ambiguity in requirements
  • Solid understanding of the full development life cycle
  • A disciplined approach to development, testing, and quality assurance
  • Ability to reason with and adapt to evolving development tasks and priorities
  • Strong communication skills to create a productive communication environment with team members and stakeholders
Hopes
  • Experience with GraphQL
  • Experience with the Serverless framework for AWS Lambdas
  • Experience with Docker and/or Kubernetes
  • Experience with TDD/BDD frameworks, such as RSpec and Cucumber
  • Willingness to participate in mentoring and skills transfer among team members
  • A continuous learning mindset that keeps you current on development best practices and trends
  • Desire for a deep technical understanding for the problems at hand
  • Ability to balance trade-offs between speed and quality based on business priorities
  • Experience with React or React Native