Remote job
Java Backend Engineer

2 weeks, 1 day ago






51,000 - 65,000 USD

Job Description

Are you looking to work on challenging projects, with a diverse and motivated team, while building technology that can change the world? Do you want to join an award winning startup in their scale-up phase? Do you want to give students all over the world access to a prosperous future? Do you want to work with large distributed systems, machine learning, web crawling, and other interesting technology?

We’re looking for a Java Backend Engineer with 4+ years experience in Java, Spring, REST API, and other web tech based in Amsterdam or remote within the +-2 GMT timezones. You need to be curious and passionate with a drive to continually improve yourself, your craft, your code, and your colleagues. You need to hold yourself and your peers to the highest standards to deliver the best quality products possible! You must not be complacent, and must keeping working to improve your craft and skills. You must be able to step outside your role to work on requirements, deal with customers, and think holistically about our systems, processes, and people; always with a view to improving efficiency and long-term maintainability and quality.

You need to be available during core hours 10:00-16:00 in CET/CEST. Please make sure your salary expectations are within the budget provided.

Your responsibilities:

  • designing, building, and maintaining highly-scalable APIs and distributed systems in Groovy/Java with Spring, Hazelcast, MySQL/PostgreSQL, AWS, etc.
  • improving our web crawler and integrations with client content;
  • enhancing our search engine based on Elasticsearch;

Your abilities and skills:

  • Fluent in English
  • 4+ years experience building, delivering, and maintaining production software and distributed systems
  • Be able to communicate effectively with team members, but also be able to solve difficult problems on your own with perseverance and tenacity
  • Prove that you’re continually working to improve your skills and knowledge, by raising the standards for your own designs and code constantly, and by reading and learning from books, courses, and peers
  • Writing web backends in Java with Spring, RDBMS
  • REST API development. HTTP, JSON, etc.
  • Used to development workflows with git and github
  • Comfortable communicating and collaborating on designs remotely using diagrams, video conferencing, instant messaging, prototypes, etc.
  • Friendly and helpful to tech and non-tech team members.
  • Must be able to think of edge cases and errors to be able to write good unit and integration tests, and to test by hand to make sure new code is production-ready.
  • Tech:
    • Java
    • Any other languages: Groovy, Bash, Python, etc.
    • SQL
    • JPA, Hibernate, Flyway
    • REST APIs
    • MySQL/PostgreSQL

Bonus skills:

  • Devops techniques like continuous integration and delivery, zero-downtime deployments, clustering, queues, failover, redundancy, automated and validated backups, etc.
  • Startup experience
  • Elasticsearch
  • Apache Storm
  • UI/Frontend experience. Javascript, RiotJS, React/Redux, etc. background will help you when dealing with the front-end deployments
  • Amazon Web Services:
    • Route53
    • Elastic Beanstalk
    • EC2
    • IAM, security groups, bastion hosts
    • S3
    • Cloudfront
    • RDS
    • SQS
    • Cloudwatch
  • Instrumenting code for Prometheus
  • Application performance monitoring implementation

Your traits:

  • Curious. Able to learn and apply new concepts and tools rapidly
  • Pragmatic. Choose the practical path to delivering a product without getting lost in fancy new technologies or techniques
  • Attention to detail. Every line of code should be crafted well and understood thoroughly. No copy/paste coding allowed
  • Perseverance. Able to solve difficult problems without giving up and expecting someone else to take over
  • Take pride in your work. You should be proud to put high quality software in front of users. Software you’ve tested thoroughly yourself
  • Take responsibility for your work throughout its life cycle from requirements to delivery and maintenance
  • High degree of personal responsibility over designated duties. Step outside your role if needed to get the job done well
  • Consistent and organised
  • Timely and eloquent communicator
  • Focused on helping the team win, before personal gain
  • Open to receiving objective criticism and improving upon it
  • Like to work in a startup environment

Ready to Apply?

Apply Now