Job Description
We are looking for a Senior Java Developer for designing and implementing backend solutions for our Artificial Intelligence and Internet of Things platforms. The successful candidate must have proven experience in building high-performing, high-availability, scalable applications. You will be part of a talented software team that works on mission-critical applications which includes managing real-time Kafka streams, Multi-threaded applications and AI/ML integrations. Your responsibilities include designing, developing and delivering high-volume, low-latency applications for mission-critical systems.
Responsibilities:
- Be a core participant in the requirements gathering and analysis, design, implementation and testing of software solutions.
- Identify and incorporate existing solutions and technologies to shorten development time and still maintain a high-quality codebase.
- Create specifications, provide estimates, and develop software for those specifications.
- Create automated tests and ensure the code is well-tested before committing any code changes.
- Create and manage build scripts to ensure that software packages are built according to industry and company standards.
- Be a project lead to coordinate a team to ensure timely delivery of project milestones, deadlines, and/or demos.
- Produce well-designed, testable, efficient code.
- Conduct code reviews to ensure code is written according to industry and company standards and to ensure the team is using shared libraries for maximum re-use.
Mandatory Skills:
- Knowledge of Hadoop Hive & Trino.
- Knowledge of Kafka, Kafka streams & Spark.
- Solid experience writing multithreaded applications.
- Development experience with network protocols (HTTP, TCP / UDP, SNMP) and Java NIO.
- Hands-on development experience in high-volume, low-latency applications.
Qualifications:
- Bachelor of Engineering or Bachelor of Computer Science.
- 5+ years of professional software development experience.
- Experience with big data technologies such as Hadoop, Hive and Trino.
- 5+ years developing enterprise-level applications using Java 6 and above.
- At least 3 years of experience in the Spring Framework.
- Experience with deploying, developing and testing in high-performance computing, or big data solutions.
- Experience with relational databases, SQL and ORM technologies (Hibernate).
- Experience configuring Oracle, MySQL and/or PostgreSQL.
- Solid experience consuming and creating REST API.
- Positive mindset, with strong interpersonal skills and the ability to work constructively within a team environment.
- Strong analytical and problem-solving capabilities.
- Ability to learn new technologies quickly and work independently.
- Excellent verbal and written communication skills (in English) with experience in creating clear and concise documentation.
- Experience in conducting code reviews and merging code.
- Experience using Gradle or Maven to manage build dependencies.
- Experience using GIT, ability to branch, tag and version release packages.
- Experience deploying, installing and debugging applications running on Linux.
Interested candidates can apply online or email your CV to [email protected]