about 1 month ago

Logo of Dwolla

Senior Software Engineer

$99k - $193k

Dwolla

Des Moines, IARemoteUS
👋  Hi, I’m Ben, Director of Engineering here at Dwolla.  I’m looking for a talented Senior-level Software Engineer to join our fast-paced, collaborative, diverse Engineering team.

Here is what you can expect to work on in this critical role:
You will build systems with techniques like Test Driven Development and programming languages such as Scala, TypeScript, and C#.  You will also design and deploy solutions with containerized microservices using technologies like AWS, Docker, Lambda, and ECS. This means you’ll design and build the products and services that power the Dwolla Platform.  From public APIs and user interfaces to internal operational systems and 3rd party integrations, the solutions you build will solve real customer problems.

How do our Senior Product Software Engineers spend their time?
About 70% development(following an API-first approach to solving customer needs) and 30% team collaboration, mentoring and professional development.  A typical day might include developing stories, unit testing, code reviewing, merging pull requests and participating in cadence meetings. 

Our team values collaboration, a passion for learning and a desire to become a master of your craft.  We thrive in asynchronous communication.  You will have a lot of support from leadership when you communicate proactively with detailed information about any roadblocks you may encounter.  

Qualities of Senior Software Engineers Who Thrive in This Role
🔥  You are a driven, self-starter type of person who isn’t afraid to dig for answers, stays up-to-date on developer trends and is always looking for ways to enhance your knowledge (yes, industry-related podcasts count! 🎧) .
🤝  You’ve served as a mentor for junior engineers and view influential and informal leadership as an exciting opportunity in any role.
🏆  Although the nature of this work is fairly individualist, the ability to collaborate with the team via code review and architecture discussions is vital (and we really love it when team members are active participants in our cadence meetings).

👀 Curious about how we create a great user experience?  Peep these blog posts guiding our clients in the use of our platform.

What’s expected of a Senior Software Engineer at Dwolla?

  • Design and develop applications using Scala, TypeScript and C#
  • Respond promptly and professionally to bug reports
  • Review and repair code
  • Analyze, design and coordinate the development of Dwolla products
  • Maintain responsibility for scheduling, resource management, and reporting systems
  • Assist team members with requirements analysis and testing
  • Work closely with the software development lead to translate business requirements into technical solutions
  • Maintain responsibility for troubleshooting production issues in response to user inquiries
  • Managing and prioritizing multiple tasks with competing deadlines
  • Apply expertise in system design and operation, including 
  • High volume reliable messaging infrastructure using SQS and RabbitMQ
  • Big Data Infrastructure using S3 and related technologies
  • Database and caching technologies including RDS,  Redis, and DynamoDB
  • Core development and CI/CD tools like Git, Jenkins Cloudformation, and Terraform
  • Selecting the best tool for the job

What are the preferred qualifications for this position?

  • Excellent understanding of programming languages and techniques
  • Strong grasp of foundational programming concepts
  • Working knowledge of distributed system design including event-driven microservices, containerized applications, and service discovery
  • Ability to take ownership of assigned work and complete projects without oversight
  • Experience mentoring team members using paired programming and participating in code reviews
  • Proven history of completed projects
  • 4+ years of experience with application development using object oriented or functional programming languages
  • Experience with Agile software development practices 
  • Bachelor’s Degree in Computer Science or related field required or 4+ years of experience in a closely related role
  • Experience using
  • Agile methodologies
  • Test Driven Development
  • Continuous Integration

  • 👉 Please note: Part of the application process for this position is the successful completion of a technical skills assessment.  Only applicants who complete the assessment will be considered for this role.