Job Description
Company Overview At Cognitive3D we believe that the next generation of content is being built right now, and it’s being built in 3D. Our company has a unique 3D analytics technology that provides insight and visibility into user behaviour and actionable insights for games, training applications, retail research, and enterprise simulations. We specialize in support VR / AR / MR and XR applications. To experience our product firsthand, we invite candidates to try it out for free by visiting https://www.cognitive3d.com. Take this opportunity to explore the capabilities of our platform, allowing you to better understand the impact your contributions as a software engineer can have. We also have several public code repositories at https://github.com/CognitiveVR Note that we require all applicants to be legally allowed to work in Canada. We cannot support immigration nor applicants who wish to work outside Canada. We do not accept applications from agencies nor recruiting firms. Position Overview We are seeking a talented and driven Senior Software Engineer to join our team. The selected candidate will play a crucial role in developing and maintaining our data pipeline, enabling the seamless transfer of data from our SDK running in our customers’ applications to our cloud services. They will also be responsible for developing APIs that facilitate data visualization, metrics, analytics, and insights on our web dashboard. The ideal candidate has a strong foundation in Java and/or Scala, possesses expertise in distributed data processing and streaming data processing, ideally with Flink experience but AWS EMR, Spark, and other equivalents are helpful too. Expertise in ElasticSearch / OpenSearch, Cassandra, Redis, SQL, and Apache Kafka will set candidates apart. Note that we are a small, fast-moving, and high-autonomy team. We don’t put people in silos and expect team members to continually learn and improve. The right answer to “I don’t know” is, “I’ll go learn about that.” Responsibilities Design, develop, and maintain our data pipeline, ensuring the smooth and reliable transfer of data from our SDK to our cloud services. Create and maintain APIs that enable the web dashboard to display metrics, analytics, and insights. Collaborate with data scientists, product managers, web developers, and UX/UI designers to understand requirements and implement data-related features. Optimize data pipeline performance, scalability, and reliability through continuous monitoring, testing, and tuning. Troubleshoot and resolve data-related issues. Provide as-needed data pipeline support to keep our platform running at high availability and cost-effectively. Contribute to the documentation, knowledge sharing, and best practices within the software engineering team. Requirements Minimum of five years of professional experience as a software engineer, with a focus on data pipelines and APIs. Proficiency in Java; knowledge of Scala is a plus. Strong understanding of handling streaming data and familiarity with related technologies and frameworks. Experience with microservices architecture is a significant advantage. Working knowledge of Flink or equivalent stream processing framework. Experience with the technologies that build our pipeline is a plus: Apache Kafka for queueing (or equivalent), Apache Cassandra for data storage (a distributed NoSQL database), Apache Avro for serialization, Play Framework for web servers. Apache Kafka and Redis are also valuable skills. Solid understanding of software development best practices, including version control, unit testing, and continuous integration/continuous deployment (CI/CD). Strong communication skills, both written and verbal, to effectively collaborate with remote team members and stakeholders. Legally allowed to work in Canada. Work Environment and Benefits: Cognitive3D is a 100% remote work company, operating on Pacific time (PST). While we employ people across Canada, our core hours are in Pacific time. As part of our team, you will have the flexibility to work from the comfort of your own home or any location that suits you. We gather the team together a few times each year for in-person events. We offer competitive compensation, including salary, benefits, paid time off, equity, and potential performance-based bonuses. You also get your own VR headset, supplied by us. We appreciate all applications; however, only candidates selected for an interview will be contacted. Thank you for considering Cognitive3D as your potential employer.