Senior Software Engineer - remote

SoundExchange
Posted 3 years ago
Stack Overflow

Have you ever wanted to work in a role that directly impacts the music industry? Are you seeking a role that advances creative growth? Are you interested in contributing to a team that develops business solutions that benefit independent artists and music companies alike? Then join us at SoundExchange, where we have the privilege of serving the entire creative music community!

At SoundExchange, we have developed a cloud-based enterprise software platform to support our rapidly growing and evolving business. Our software platform is a set of cloud-native, federated systems that are highly scalable, resilient, and modular, leveraging both custom-built and 3rd party components. We are seeking individuals to become members of our growing Engineering team to help evolve SoundExchange’s software strategy and products and expand our service offerings to the music industry.

We’re hiring Senior Software Engineers that will be contributors to the full lifecycle of our software development process. In these roles, you will be hands-on, performing software development, responsible for developing new features, modifying and refactoring existing design and integrating custom and 3rd party systems. You will bring skills in full stack development, have a deep knowledge of object-oriented software engineering, experience in Java or Python, enterprise software engineering concepts, patterns, models, practices, and processes.

With your help, we will collect and distribute digital performance royalties on behalf of more than 200,000 recording artists’and master rights owners’accounts and administer direct agreements on behalf of rights owners and licensees. We will also work together to build and enhance the additional services (particularly for music publishing) that SoundExchange provides to the entire music industry.

Responsibilities:

  • Contributes as a hands-on engineer to a full lifecycle software development team including design, development, and deployment including automated and functional/behavior-driven testing
  • Develops new features in a highly collaborative environment
  • Follows and improve software development best practices to achieve a high level of quality, maintainability, and security
  • Works with team and stakeholders to create clean, maintainable technical solutions to complex business problems
  • Actively contributes to the team software design and development process by bringing new ideas and alternative ways of solving problems, contributing to design sessions, and improving quality of code through code reviews and other quality metrics
  • Leverages and enhances continuous build and deployment tools

Desired Skills and Qualifications:

  • 4 years of experience as software engineer
  • 2 years of experience in a Senior Engineer role preferred
  • Proficiency with Java (8/11+) or Python
  • Proficient using many of the following: Spring/Spring Boot, Django, SQL, Hibernate/JPA, Git, Angular or Vues
  • Proficiency developing, deploying, and maintaining applications within AWS, specifically: S3, Lambda, Step Functions, Aurora, ECS/EC2, ElasticSearch, Fargate, IAM, RDS, Batch
  • Experience with Terraform or other Infrastructure as Code technologies
  • Experience building enterprise software with complex business rules, domain models, and data models
  • Proficiency at designing relational data models and working with relational databases
  • Proficiency in Agile software development methodology, processes, and practices
  • Experience designing and developing microservices or other distributed systems
  • Strong written and verbal communication skills