Position: Senior Java Engineer
Company: Grid Dynamics
Experience required: 3y
English level: intermediate

We seek a Senior Java Engineer with strong technical expertise, who is interested in joining our growing project that is responsible for the project for a top American multinational food, snack, and beverage corporation with interests in the manufacturing, marketing, and distribution of grain-based snack foods, beverages, and other products.

As a key member of this team, you will be working in a collaboration with a team of worldwide recognized experts. This is an excellent opportunity to become a key contributor to the project while creating the next generation of network-centric distributed and scalable architectures.

You’ll be a part of a bright engineering team that has open communication, empowerment, innovation, teamwork, and customer-centric culture.

Responsibilities:

- Participate in the design and development of the high-performance business application, from requirements analysis to production
- Constantly improve software quality (evaluate and incorporate new libraries, tools, and technologies; code reviews; refactoring; testing; etc.)
- Analyze and improve application performance
- Search for simple and robust solutions to complex tasks
- Work in an agile methodology environment where innovation, teamwork, and creativity are the key to success
- Collaborate with a distributed team of developers, QA engineers, analysts 

Requirements:

- 3+ years in Software Development
- Education in Computer Science or similar theoretical knowledge in CS: algorithms and complexity estimation, data structures, operating systems, programming languages
- Great knowledge of Java platform (collections, concurrency, etc). A good understanding of JVM internals is a plus
- Hands-on experience with Docker is a plus
- Nice to have an understanding of development principles for Clouds especially for AWS
- Knowledge of Apache Cassandra would be a plus
- Experience in enterprise applications development (J2EE, Spring Source, etc) is a plus
- Understanding of distributed architectures and scalability principles
- Understanding of SDLC and agile methodologies in particular
- Hands-on experience with developer daily basis tools such as IDE’s, compilers, debuggers, profilers, version control systems, bug tracking systems, build systems (Gradle, Maven2, etc), code coverage and automated testing tools
- Experience with unit and integration testing (JUnit, TestNG, Mockito, etc.)
- Desire and ability to quickly learn new tools and technologies
- Ability to proactively identify and solve engineering problems
- Good interpersonal communication skills, both verbal and written. Good written English is a must

We offer:

- Competitive salary
- Work on bleeding-edge projects  in a team of experienced and motivated developers and QA engineers
- Flexible working hours
- Business trips to the USA
- Health insurance, a benefits package, company-sponsored conferences, vacations
- Well-equipped office located in the center of the city