Overview:
The role of a Clojure Developer is vital to our organization as they will be responsible for developing and maintaining high-quality software applications using the Clojure programming language. This role is essential in ensuring the efficient operation of our software systems and contributing to the overall success of our technology initiatives.
Key Responsibilities:
- Designing, coding, and debugging new Clojure applications
- Collaborating with cross-functional teams to define, design, and ship new features
- Implementing best practices for software development, including code reviews, unit testing, and continuous integration
- Performing thorough testing and validation to optimize application performance
- Managing database systems and ensuring their stability, reliability, and performance
- Identifying and resolving technical issues in a timely manner
- Documenting code and technical designs to ensure maintainability and reusability
- Participating in Agile development processes and contributing to sprint planning and retrospective meetings
- Keeping up to date with industry trends and best practices in Clojure development
- Providing technical support and troubleshooting for existing applications
Required skills:
- Core Java, OOP concepts
- Clojure programming knowledge is mandatory
- Good Knowledge of Cassandra and no SQL databases
Required Qualifications:
- Bachelor's degree in Computer Science, Engineering, or a related field
- Proven experience in software development using Clojure and functional programming concepts
- Strong understanding of database management and optimization
- Proficiency in using development tools such as Leiningen, Figwheel, and Compojure
- Experience with web technologies, including HTML, CSS, and JavaScript
- Ability to write clean, maintainable, and efficient code
- Excellent problem-solving and analytical skills
- Familiarity with version control systems, particularly Git
- Knowledge of software development best practices and design patterns
- Ability to work effectively in a collaborative team environment
- Excellent communication and interpersonal skills
- Strong attention to detail and accuracy
- Ability to learn and adapt to new technologies and methodologies
- Experience with Agile methodologies such as Scrum or Kanban is a plus
- Certifications in Clojure or related technologies are desirable