Are you looking for a new challenge? Do you love learning and applying your skills to interesting and important problems? Want the opportunity to work in a thriving startup? We are looking for a Senior Java / Kotlin Full-Stack Developer to join our team.


reDock Inc. has an immediate opening for a senior Java / Kotlin full stack developer (Java / Kotlin / Scala on the backend and JavaScript / React on the frontend) to help us build our core product. Our software leverages machine learning, search, and other techniques to extract corporate content into meaningful segments that can be repurposed to accelerate document creation and deliver winning business outcomes. As a motivated full-stack developer in a startup environment, you will have tremendous say in the work you do and the direction of our product.

Our target stack is Kotlin, JavaScript ES6 with React and GraphQL, SQL, graph database, and ElasticSearch backends, running on Linux with Docker and Kubernetes.

You will primarily build the backend services for our product, such as to manage content, search it efficiently, handle import and export capabilities, deal with user authentication and authorization, and more. You will integrate your software with systems like Neo4j, ElasticSearch and Kafka. You will also build out our GraphQL API, and implement React components on the frontend. If you have the ability and the interest, you may also be involved with the devops for our solution, and with training and using machine learning for classification, segmentation, and analysis of our data.

About You

As a candidate, you love writing software. You always pay attention to the details. Your code is consistent, beautiful and bulletproof. Your log messages are useful. Your terminal window is always a keystroke away. You likely know regular expressions almost as well as you know your native language. You love playing with and prototyping new technology and frameworks. You understand the difference between blocking and non-blocking code. You love tinkering with stuff. You like a challenge when solving problems and live for that “aha!” moment when you solve a doozy. You are always striving to expand your knowledge and toolset. You have strong opinions and an active mind. You will have great examples of bringing tremendous value to the organizations you have worked for.


  • At least 4-5 years of relevant work experience
  • Degree in Computer Science/Engineering, Electrical Engineering, Mathematics, or equivalent experience
  • Expert backend development on any JVM language (Java, Kotlin, Scala, Groovy, Clojure)
  • Strong frontend development, ideally with JavaScript ES6, React or Angular, and related libraries and tools
  • Experience with designing APIs using REST, SOAP/XML, and possibly GraphQL
  • Relational database design and SQL
  • Unit testing tools such as JUnit
  • Professional application development experience
  • Linux/UNIX use and maintenance
  • Strong English communication skills, written and verbal. Must be able to communicate effectively with both technical and non-technical colleagues
  • A mature individual that can work unattended and meet deadlines in a home office environment

Nice to Haves

  • Know or can learn .NET, Python, Go
  • Experience with search tech like Lucene, ElasticSearch, or Solr
  • Expert source control, ideally Git or other DVCS
  • Non-relational (NoSQL) database design and query, including document and graph databases
  • Experience with functional and Reactive programming
  • Experience building micro-services architectures using tools like gRPC and Kafka
  • Experience with the Gradle build tool, and continuous integration with Jenkins or TeamCity
  • Devops experience, containers e.g. Docker, Kubernetes
  • Familiarity with machine learning
  • Contributions to open source projects
  • Active on sites like StackOverflow

In addition to your resume, please send along links to live projects, publicly accessible source code, and/or other examples of your work.

Follow the link to apply.