Viafoura partners with over 600 media brands to engage, convert, and monetize their digital audiences. With best-in-class engagement and content moderation solutions — including real-time conversations, live blogs, community chat, personalization tools and AI-powered moderation — Viafoura helps companies create active, civil, and loyal online communities. Advanced data analytics also offer customers access to unique and valuable insights into their audience’s behaviors and preferences.
We’re a dynamic and innovative team, building a global, distributed, real-time platform that handles thousands of events per second. We utilize technologies like Kubernetes, Docker, Java, MySql, Kafka, OpenSearch, and more.
We’re looking for an Intermediate Java Software Engineer who is passionate about code craftsmanship, continuous improvement, and agile development. You will be creating elegant solutions to complex, real-world challenges. You will be working closely with a highly-collaborative team to implement business solutions and modernize our platform.
We are looking for someone who is passionate about doing things right, not just about getting them done.
Experience
- 4 to 6 years experience in professional Java development
Responsibilities
- Work closely with a cross-functional, agile team, developing our backend services in response to business and engineering needs
- Participate in code reviews and contribute to continuous improvement of our development processes.
- Develop scalable software artifacts that are easy to understand and simple to maintain
- Adhere to and advocate for best practices
- Contribute to development of our Continuous Integration / Continuous Deployment system
- Contribute to development of system monitoring and alerting solutions
- Contribute to the continuous modernization and migration of our system to use new, state-of-the-art solutions
Qualifications
- 4 to 6 years of full-time Java back-end development experience (other JVM language experience is a plus)
- Experience with Linux or Unix environments
- Experience with AWS preferred, other cloud vendors (GCP, Azure..) acceptable
- Experience in writing Tests using Junit or similar libraries
- Experience with RESTful APIs
- Experience with API tools like Swagger or OpenAPI
- Experience with Gradle, Maven, Jenkins, Git
- Experience with Agile delivery methodology
- Proven experience using RDBMS
- Well-versed in Continuous Integration and Continuous Delivery
- Knowledge of high throughput and low latency, asynchronous systems
- Familiar with Microservices architecture
- Knowledge of Design Principles, Design Patterns, code refactoring, Domain-Driven Design
- Familiar with Service-Oriented Architecture, Layered/Onion/Hexagonal/Ports-and-Adapters application architecture
- Familiar with Java frameworks like Vert.x or Spring Webflux, KafkaStreams, Guice, etc.
- Experience with Java multi-threading and concurrency
- Experience with a scripting language such as Python, Ruby, etc.
- Experience with creating metrics, dashboards, and alerts
Nice to haves
- Experience with Kafka, Elasticsearch/Open Search
- Experience with kubernetes, helm, docker for cloud deployments
- Appreciation for performance optimizations, especially in latency-sensitive (millisecond scale) environments
- Experience with other languages such as PHP, Python, JavaScript, Bash, or Terraform
- Experience with a functional language
- Experience mentoring team members
Job Benefits
- Competitive Compensation
- Comprehensive benefits
- Professional Development
- A highly supportive and collaborative Agile team culture
- Choice of technology: Mac, Linux, PC and Abacus (limited)
- A collaborative and open workspace
- Fully-remote work
Apply for this job