Senior Software Engineer, Backend in Calabasas, California at AmaWaterways, LLC
Explore Related Opportunities
Job Description
At AmaWaterways, we believe meaningful careers begin with purpose, passion and a shared commitment to delivering unforgettable experiences. For those who value curiosity, connection and personal enrichment, AmaWaterways offers the opportunity to help craft meaningful river journeys that invite travelers to follow their own current. Built on a foundation of heartfelt hospitality, we treat our guests—and each other—with genuine care, warmth and respect. AmaWaterways fosters a collaborative environment both onboard our ships and across our global network of offices, where team members grow together, support one another and take pride in upholding the high standards and thoughtful service our company is known for.
We invite talented, motivated professionals to explore our career opportunities and begin their journey with AmaWaterways today.
SUMMARY
This position is primarily responsible for the design, development, and ongoing maintenance of the backend services that power AmaWaterways' consumer and partner digital products, across all aspects of the project life cycle from inception to implementation. The Senior Software Engineer (Backend) builds scalable, secure, high-performance APIs and services — including inventory, leads, identity, and notification services — that support booking, pricing, and guest experiences. This role performs duties related to building software applications and the technical architecture of web-based software products. Specific team assignment will be determined based on portfolio needs at time of hire.
DUTIES AND RESPONSIBILITIES
- Design, develop, code, test, and debug complex backend services and APIs, or make significant enhancements to existing services, across all layers of a multitier architecture.
- Build and maintain RESTful and GraphQL APIs using .NET (C#) and/or Node.js that expose inventory, pricing, leads, identity, and guest-experience capabilities.
- Take ownership of the configuration, development, and maintenance of services that are critical to the organization's mission and core business operations.
- Design event-driven and message-based integrations (e.g., Service Bus queues and topics) with attention to reliability, idempotency, dead-letter handling, and audit trails.
- Develop and maintain source-of-truth and synchronization services, including caching strategies (e.g., Redis) and data consistency across upstream and downstream systems.
- Create and document detailed design specifications, technical design documentation, and unit test cases to ensure all business and functional requirements are met.
- Integrate services with external systems and data sources, including CRM (Salesforce), email/notification providers, and the reservation system of record.
- Optimize services for performance, scalability, and low-latency read/write paths; profile and performance-tune applications as needed.
- Implement identity and access controls using Auth0 or equivalent (OIDC/OAuth2, JWT), including role-based access control and audit logging.
- Adhere to secure coding standards and apply application security principles throughout development; remediate identified vulnerabilities prior to release.
- Perform unit, integration, and regression testing, and apply test-driven development (TDD) practices to ensure code quality and system stability.
- Build, configure, and maintain CI/CD pipelines and automated build, test, and deployment processes across multiple environments (Dev, UAT, Prod).
- Perform troubleshooting, root-cause analysis, and escalation for production issues and incidents; participate in on-call rotation as required.
- Provide project effort estimations and communicate effectively with technical and non-technical groups, both internally and externally.
- Provide mentoring and technical guidance to junior developers on and off the team.
- Maintain current knowledge of relevant backend technologies, cloud services, and development tools, and evaluate their applicability, including AI-enabled development tools.
- Performs other related duties as assigned by management.
SUPERVISORY RESPONSIBILITIES
- This job carries out supervisory responsibilities in accordance with the organization's policies and applicable laws:
- Providing day-to-day guidance, mentorship, and technical direction to the junior developer(s).
- Assisting with interviewing and evaluating candidates for engineering roles when needed.
- Supporting the onboarding and training process to ensure adherence to development standards and best practices.
- Assigning tasks, monitoring progress, and ensuring timely delivery of backend development work.
- Participating in performance discussions by offering feedback on productivity and professional development.
- Helping to address minor workplace or project-related concerns and escalating issues when appropriate.
QUALIFICATIONS
- Bachelor's Degree (BA) from a four-year college or university, or five or more years of related experience and/or training, or equivalent combination of education and experience.
- Computer skills required: Contact Management Systems; Development Software; Inventory Software; Microsoft Office Suite; Project Management Software, Database Software, Design Software, Internet Software, Spreadsheet Software, Word Processing Software, Electronic Mail Software, Presentation Software, Reservation Software, Phone Software.
- Other skills required:
- Five or more years of related backend software development experience.
- Strong professional experience with .NET (C#) and/or Node.js, building web services and APIs.
- Professional experience developing RESTful APIs using HTTP methods (GET, PUT, POST, DELETE); experience with GraphQL strongly preferred.
- Experience designing and building event-driven and message-based architectures (queues, topics, pub/sub), preferably with Azure Service Bus or equivalent.
- Strong experience with relational database design and development (SQL Server, PostgreSQL) and writing complex SQL queries; familiarity with NoSQL and caching patterns (e.g., Redis).
- Technical project experience, including analyzing, documenting, and designing software system architectures.
- Experience debugging, profiling, and performance tuning backend applications and services.
- Ability to use unit testing tools and apply test-driven development (TDD) practices.
- Hands-on experience with cloud platforms (preferably Microsoft Azure), including app hosting, API management, storage, networking, and security concepts.
- Experience designing, building, and maintaining CI/CD pipelines using tools such as Azure DevOps, GitHub Actions, or similar, across multiple environments (Dev, UAT, Prod).
- Experience integrating identity and access management using Auth0 or equivalent (OIDC/OAuth2, JWT, SSO).
- Familiarity with infrastructure-as-code concepts and tools (ARM templates, Bicep, Terraform, or similar) is a plus.
- Experience with application monitoring, logging, and alerting in cloud environments (Dash0, Datadog, New Relic, or equivalent).
- Strong knowledge of secure coding practices and application security principles (OWASP), and PCI considerations for consumer-facing booking and payment flows.
- Professional work experience with source control management systems (Git/GitHub, Azure DevOps).
- Experience working in Agile/Scrum environments.
- Excellent communication skills and ability to collaborate with cross-functional teams.
- Hospitality, travel, cruise, or e-commerce experience strongly preferred.
COMPETENCIES
- Diversity - Shows respect and sensitivity for cultural differences; Promotes a harassment-free environment.
- Analytical - Synthesizes complex or diverse information; Collects and researches data; Uses intuition and experience to complement data; Designs workflows and procedures.
- Customer Service - Manages difficult or emotional customer situations; Responds promptly to customer needs; Solicits customer feedback to improve service; Responds to requests for service and assistance; Meets commitments.
- Dependability - Follows instructions, responds to management direction; Takes responsibility for own actions; Keeps commitments to long hours of work when necessary to reach goals; Completes tasks on time or notifies appropriate person with an alternate plan.
- Design - Generates creative solutions; Uses feedback to modify designs; Applies design principles; Demonstrates attention to detail.
- Initiative - Volunteers readily; Undertakes self-development activities; Seeks increased responsibilities; Takes independent actions and calculated risks; Looks for and takes advantage of opportunities; Asks for and offers help when needed.
- Innovation - Displays original thinking and creativity; Meets challenges with resourcefulness; Generates suggestions for improving work; Develops innovative approaches and ideas; Presents ideas and information in a manner that gets others' attention.
- Teamwork - Balances team and individual responsibilities; Exhibits objectivity and openness to others' views; Gives and welcomes feedback; Contributes to building a positive team spirit; Supports everyone's efforts to succeed.
PHYSICAL DEMANDS AND WORK ENVIRONMENT
- Occasionally required to stand
- Occasionally required to walk
- Continually required to sit
- Continually required to utilize hand and finger dexterity
- Occasionally required to climb, balance, bend, stoop, kneel or crawl
- Frequently required to talk or hear
- While performing the duties of this job, the noise level in the work environment is usually moderate
- The employee must occasionally lift and/or move up to 10 pounds
- Specific vision abilities required by this job includes close vision