Job Openings Fullstack Software Developer

About the job Fullstack Software Developer

Software Developer

Role Summary

As a Software Developer at Nulogy, you will be working collaboratively to translate complex, real-world problems into scalable software. You will work closely with other members of a cross-functional Agile team to understand requirements, generate solutions and create or improve features within the platform. Software Developers at Nulogy follow industry best practices including: test driven development, infrastructure as code, pair programming, frequent refactoring and continuous integration/deployment.

Role and Responsibilities

  • Improve and maintain features within the Nulogy Platform.
  • Write clean, maintainable and scalable code in Ruby on Rails, React and PostgreSQL.
  • Work with Product Management and Design resources to design new features.
  • Participate in team Agile rituals such as planning, standups and retrospectives.
  • Identify and improve parts of the Nulogy Platform with technical debt.
  • Participate in the team on-call rotation.
  • Mentor new or less experienced team members.
  • Learn and apply engineering principles such as ones outlined in:
  1. Working Effectively With Legacy Code
  2. Growing Object Oriented Software Guided By Tests
  3. Domain Driven Design / Implementing Domain Driven Design 
  4. 99 Bottles of OOP 

Experience and Skill Requirements

  • Full-stack development
  • Ruby on Rails
  • React
  • JavaScript (JS)
  • TypeScript (TS)
  • PostgreSQL

Expectation of strong knowledge

  • Algorithms, design patterns principles, DB design, and data modeling.

Key skill 

  • Modeling physical processes (transforming real-world systems into software representations)
  • Frameworks and architecture patterns should be familiar, especially as they transition from old Rails patterns to modern approaches.
  • Experience in managing both monolithic architectures and the refactoring process to improve them is essential

Beneficial Experience and Skills

  • Experience in domain modelling (e.g. using Domain Driven Design)
  • Experience with AWS and infrastructure as code tools such as Terraform
  • Experience working in CI/CD Environment using feature flags
  • Experience with TDD and safe refactoring techniques
  • Experience with pair programming

Education

  • A degree in computer science or equivalent is preferred, but we will also consider candidates that meet the experience requirements listed above