Principal Software Engineer

Engineering Dublin, Ireland


Description

Responsibilities:

  • Design and develop new services, applications, and database components as part of the next generation platform for Deem
  • Take ownership of one or more core microservices on an iterative development model from concept to completion
  • Collaborate with cross-functional teams: Product Management, Project Management, Engineering, QA, and DevOps, both onsite and remote to deliver scalable solutions
  • Analyze business requirements, and create technical design documents in accordance with Deem's architecture standards
  • Assist in preparing accurate estimates for software development work, track progress, and course-correct accordingly
  • Lead and work closely with a small team of engineers to deliver high quality releases
  • Interview and help hire other engineers on the team
  • Maintain high coding standards, participate in design and code reviews
  • Write unit and integration tests to ensure quality and test coverage
  • Debug and troubleshoot issues across all layers of the solution stack
  • Keep up to date on the newest technological innovations and work on continuously applying those to existing and new software solutions

Qualifications:

  • 9+ years of experience building complex, scalable, distributed web-based applications
  • Deep understanding of microservices design patterns and service-oriented-architecture
  • Excellent programming skills in one or both of Java and Golang
  • Experienced with open-source tools and libraries like Spring and Hibernate
  • Proficient in a relational database like Oracle or MySQL, experience with NoSQL DB
  • Background in Travel domain with understanding of booking tools & processes highly desirable
  • Expertise in creation and consumption of RESTful web services or gRPC based services
  • Knowledge of the DevOps philosophy and working with Docker, Kubernetes, and continuous integration services & techniques
  • Good understanding of Git
  • Excellent problem solving and troubleshooting skills
  • Excellent communication and documentation skills
  • Understanding of and experience with Agile engineering practices and modern development methodologies
  • Experience leading, hiring, mentoring small engineering teams
  • Frontend development experience using React or Angular gets extra points
  • Bachelor’s Degree in Computer Science or related fields
  • Familiarity with monitoring at the system and application level plus

We are an E-Verify company.