Overview
UpHill is the place where health professionals can find best practices to decide and train. We\'re backed and trusted by top-tier investors and leading clients (e.g. Luz Saúde, Caixa Capital, Bynd, Maze, Brighteye Ventures, Novartis, Pfizer, etc).
Today we\'re looking for a Senior Software Engineer to join our talented team and help us build a decision support Saas platform that will revolutionize healthcare, minimize medical error and thus improve patient outcomes.
Stack used
- Java 17
- Spring boot
- Docker
- Relational SQL and Documents NoSQL
- AWS stack - Fargate (service architecture), EventBridge, SQS, Cognito, Lambda, etc - Terraform
Responsibilities
- Collaborate with architect to design microservices: work closely with the architect to understand product requirements and translate them into a technical solution using microservices architecture. This includes defining microservice boundaries, APIs, data models, and communication protocols.
- Develop and maintain microservices: translate the designed architecture into well-written, clean, maintainable, and testable code using Java 17 and Spring Boot 3. Ensure the microservices are performant, scalable, and secure.
- Contribute to AWS cloud infrastructure: participate in designing, deploying, and maintaining the AWS cloud infrastructure that supports the SaaS application.
- Showcase implemented solutions: communicate and demonstrate the technical solutions implemented by the team during sprint reviews or other relevant forums, including presentations, demos, or documentation to explain design choices and benefits.
- Collaborate and define coding conventions: establish and maintain clear and consistent coding conventions, discuss best practices, identify areas for improvement, and document agreed-upon conventions.
- Ownership mentality: you ship and maintain what you build.
- Autonomous but collaborative: capable of owning initiatives while working effectively with cross-functional teams (product, design, ops, etc.).
- Product-focused: you care about the "why" as much as the "how" behind every feature.
Main requirements
- MSc/BSc in Computer Engineering or similar.
- Minimum 7 years of Backend development experience using Object Oriented Programming.
- Experience in working in a team.
- Experience in Code Reviews.
- Experience in an Event-driven Architecture.
- Experience in Java 11 or newer, Spring Boot and Spring Framework.
- Experience in Relational SQL and Documents NoSQL.
- Strong Testing experience - Unit, Integration, E2E.
- Rigorous about code quality - Usage of tools like SonarQube.
- Experience in taking part in architectural discussions/decisions.
- Keen awareness of the evolving software development landscape, including the integration of AI assistants and productivity tools in day-to-day engineering work.
- Experience in designing systems for production readiness, including health checks, distributed tracing, and incident response.
- Strong observability mindset: familiarity with tools like CloudWatch, DataDog, Prometheus, OpenTelemetry, etc. Understands the importance of logging, metrics, and alerting in a production-grade SaaS product.
- Fluency in Portuguese and English.
Nice to have
- Docker
- NoSQL
- CI/CD knowledge
- DevOps knowledge
- Terraform knowledge
- AWS knowledge
- Experience working in a services-oriented architecture
- Messaging brokers (e.g. RabbitMQ, ApacheMQ, etc)
- Cloudwatch, DataDog, etc
- HL7v2/FHIR knowledge
- Experience with integrations
Perks
- Health & dental insurance.
- Birthday day-off
- Gym
- Flexible schedule
- Open vacation policy
- Budget for training
- Additional Team holidays - Get together with the entire company
- Macbook
- Office freebies.
- No Corporate BS.