Senior Software Engineer
Smarsh is the leader in communications compliance, archiving, and analytics. We provide compliance across the broadest set of communications channels with insights on what’s being captured. Smarsh customers manage over 500 million daily conversations across 80 channels and growing. Customers include the top 10 U.S., top 8 European, top 5 Canadian, and top 3 Asian banks. The Smarsh advantage is customers stay ahead of compliance and uncover patterns and relationships hidden within their data.
The Machine Learning Engineering team is responsible for developing and maintaining the backbone of our state-of-the-art data processing pipeline that processes millions of messages daily to derive actionable insights using natural language processing (NLP), artificial intelligence (AI), and machine learning (ML).
Our software engineers work closely with our Applications teams to deliver a tightly integrated, seamless user experience. Smarsh engineers must be able to work in a fast-paced and fluid environment and must be able to take a project and shepherd it all the way to production.
Collaborate closely with cross-functional teams to build performant applications.
Perform code reviews, provide constructive feedback
Continuously discover, evaluate, and implement new technologies to maximize development efficiency
B.S. in computer science or a related field, M.S. in Computer Science or equivalent preferred
3+ years software development experience
Proficiency with a JVM language (Kotlin, Java, etc.) and/or Python
Strong experience developing and deploying microservices
Experience with cloud native development (GCP, AWS, Azure)
Experience with relational and NoSQL databases
Nice to Have:
Experience with Message streaming technologies like Kafka, Google Pub/Sub, Amazon SNS
Experience with Infrastructure automation and orchestration tools like Kubernetes, Helm, Ansible, Terraform
Knowledgeable about CI/CD methodologies
80% Software Development
5% Agile Processes