· Have knowledge of professional software engineering practices, best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
· Experience influencing software engineering best practices within your team.
· Experience taking a leading role in building complex software systems.
· Ability to quickly adopt to changing environment, understand the complex code base quickly and be able to work within ambiguous design constraints.
· Work well in teams and respect and welcome ideas from partners, business stakeholders, and technical experts.
· Passion for solving complex and interesting problems.
· Highly motivated, self-starting individual who can take effective independent decisions.
· Excellent analytical and problem-solving skills. Provides analysis of problems, evaluate alternatives, and provides solutions that are consistent with business objectives and strategy.
· Experience mentoring junior software engineers to improve their skills, and make them more effective, productive software engineers. What you have
· 5+ Years of Java 8+, Spring framework, Spring Boot and Spring cloud
· 5+ Years of Experience with distributed systems/software, real time processing, relational database systems, messaging systems preferred
· Strong Experience with concurrency & multi-threading preferred
· Experience with scaling, Java Garbage Collection, and performance tuning preferred
· Understanding of data structures, algorithms, and design patterns (GoF)
· Experience with Unix/Linux, Windows