Position: Senior Software Engineer (Java)
Company: Qubit Labs
Experience required: 3y
Category: Java
English level: upper
Published: 2021-10-01T00:00:00+03:00

More and more users in an organization are now looking to use data to drive business decisions. Data is no more a second-class citizen and companies are seeing data as a competitive advantage. We see this change and we are on a mission to change the way companies leverage their data.

With a technology platform processing more than 100 billion records a month and doublingitself every 6 months, company is poised for exponential growth in the coming future. This position provides a unique opportunity to create a massive impact on all existing and future customers of company through technology innovation.

**Requirements:**
— 3+ years of experience in building scalable, highly critical distributed systems.
— Strong object-oriented design skills, ability to apply design patterns, and an uncanny ability to design intuitive modules and class-level interfaces.
— The ability to do deep problem solving and build elegant, maintainable solutions to complex problems.
— Experience in working on highly interdependent and complex multi-services architecture.
— Experience in working on highly concurrent multithreaded applications with a keen eye on system performance and throughput.
— Good understanding of system performance trade-offs, load balancing, and engineering for high availability.
— Excellent programming skills in Java/Python or any other popular programming language.
— Strong problem-solving and debugging skills.
— Good understanding of data structures and algorithms and their space and time complexities.
— Strong technical aptitude and a good knowledge of CS fundamentals.

**Responsibilities:**
— Work on highly maintainable and efficient components/systems.
— Complete ownership of Service/Services that you are responsible for.
— Lead by example, mentor, and guide team members on everything from structured problem solving to development of best practices.
— Platformize components as libraries, utilities, and services and promote reuse.
— Identify and resolve performance and scalability issues with an increasingly complex enterprise product.
— Actively participate in design & code reviews to build robust applications and features.
— Exhibit ownership and leadership skills required to become an indispensable part of the engineering team and culture.

**We offer:**
— you can join the Kyiv product development team to work together with a thriving international company;
— see the results of your work, understand the process, influence companies decisions;
— implement all your knowledge and new ideas;
— health insurance;
— work from home;
— positive corporate environment;
— variety of online activities;
— minimum bureaucracy;
— competitive compensation.