— 5+ years of experience working on distributed multi-threaded Java applications
— Experience with developing Enterprise Java applications
— Deep knowledge of Java Core / Java 8
— Solid experience with Spring and Hibernate frameworks
— Should have proven experience of developing and maintaining multi-threaded Java application with an emphasis on performance and scalability.
— Excellent debugging and problem-solving skills along with a desire to dive into existing Java stack and fix such system
— Familiarity with HTTP, REST, HTML, JSON, and similar web-based development technologies, and with building complex multi-tier parallel distributed systems that communicate via them (such as the backend of complex websites)
— Experience with analyzing thread safety and race conditions, parallelism, synchronization, and locking, including between threads, between machines in a cluster, and in the database, including optimistic and pessimistic locking.
— SQL, object-relational mapping (e.g. using Hibernate), and basic DBA skills in Oracle and writing transactional code
— Test-driven development, including writing reflection-based/class-hierarchy-searching/abstract tests to enforce best practices on other engineers by proactively anticipating places people might fail to observe them and writing tests to catch that
— Excellent oral and written communication skills. Ability to effectively collaborate with team members is required.
— Work as an independent contributor collaborating with a team of developers and test engineers
— Will be responsible for the design and implementation of new features for the Flow product.
— Collaborate with product management, support and engineering teams in order to establish
— Mentoring & code reviewing for a remote team setting best practices and policies, writing specs, wiki pages, — Knowledge Base articles and other internal documentation
— Work closely with the Support team, and communicate with customer sysadmins, DBAs and developers for troubleshooting
— Provide technology recommendations and strategy to support product requirements priorities
We are inviting Java Tech Lead to join Intetics — an international IT-company with 25 years of experience in developing IT- solutions for 300+ clients globally and above 800 employees.
Abouth the Client:
Intetics client Cloudbees is the industry leading solution for Continuous Delivery and Release Automation (CDRA) and has been recognized by industry analysts as the leader in the CDRA space for 4 years in a row.
Abouth the Project:
Cloudbees Flow is a complex product spanning technologies ranging from distributed systems, clustering, databases, multi-thread processing, complex scheduling and much more.
The team places high value on quality with a rigorous unit test framework, code reviews and a CI build system that helps to find problems fast.
We are looking for a Java Engineer with experience in performance engineering, databases and distributed system.