- Company Name
- Simple Machines
- Job Title
- Senior Software Engineer (JVM, Kotlin)
- Job Description
-
**Job Title:** Senior Software Engineer (JVM, Kotlin)
**Role Summary:**
Hands‑on engineer responsible for designing, building, and operating scalable, data‑driven systems across the full stack (backend services, APIs, frontend components, data pipelines, and cloud infrastructure). Works closely with internal teams and client stakeholders to translate business needs into robust technical solutions within an Agile, consultative environment.
**Expectations:**
- Deliver end‑to‑end solutions with ownership from design through deployment and support.
- Influence technical direction while collaborating with multidisciplinary teams.
- Operate effectively in a hybrid (remote/in‑person) setting and adhere to Agile delivery cycles.
- Demonstrate a strong learning mindset and adapt quickly to new technologies.
**Key Responsibilities:**
- Design and implement backend services for a high‑traffic marketing platform.
- Define and document APIs, application architectures, and supporting infrastructure.
- Build, automate, deploy, and maintain cloud‑based services and data pipelines.
- Write and maintain comprehensive technical documentation for internal and client use.
- Partner with clients and delivery teams to convert business requirements into technical specifications.
- Conduct automated testing (unit, integration) and promote TDD/BDD practices.
- Collaborate with data scientists and other engineers on cross‑system solutions.
**Required Skills:**
- JVM development: Kotlin (primary) or Java.
- Design and implementation of data‑driven RESTful APIs.
- Large‑scale web service architecture experience.
- Strong SQL skills: schema design, performance‑tuned queries.
- Automated testing expertise (unit, integration; TDD/BDD preferred).
- Front‑end exposure: React, TypeScript, Redux, Tailwind (or comparable frameworks).
- Cloud platforms: AWS, GCP, or Azure.
- Infrastructure‑as‑code: Terraform, CloudFormation, etc.
- Containerization and orchestration: Docker, Kubernetes, ECS (or equivalents).
- Proficient Git workflow and collaborative version control.
**Nice‑to‑Have Skills:**
- Scala or functional programming concepts.
- Asynchronous/concurrent frameworks (e.g., Ktor, http4k, Play, RxJava).
- NoSQL databases (DynamoDB, Cassandra, BigTable, Cosmos DB).
**Required Education & Certifications:**
- Bachelor’s degree in Computer Science, Software Engineering, or a related field (or equivalent practical experience).
- Relevant certifications (e.g., AWS Certified Solutions Architect, Kubernetes Certified Administrator) are a plus but not mandatory.