- Participate in one or more software development projects, working in a team of 3 to 10 developers;
- Develop and debug program code, design system architecture, research into newest software technologies and development tools as well as project domain;
- Take part in project activities: requirements analysis, release building, code review.
- BS/MS degree in Computer Science;
- 2+ years of software development in commercial projects;
- Knowledge of fundamental data structures and algorithms;
- Good understanding of OOD/OOA principles;
- Good knowledge of Java in scope of J2SE specification;
- English: intermediate level or above, enough for reading/writing technical documentation;
- Proven ability to be responsible proactive and independent in a problem-solving environment;
- Excellent communication skills and proven success in contributing to a team-oriented environment.
Additional skills considered as an advantage:
- Experience in development of software for financial or brokerage business;
- Understanding of parallel programming, experience in multithreaded application development;
- Understanding of relational databases design, SQL knowledge, working experience with Oracle and MySQL;
- Knowledge of 2 or more programming languages;
- Knowledge of design patterns, experience in system architecture development;
- Knowledge of Unix-family OS;
- Experience in development of distributed software systems with strong performance and reliability requirements;
- Experience in GUI design;
- Experience in Web and mobile application development;
- Knowledge of newest Java development technologies, libraries and frameworks (Spring, Hibernate, Swing, GWT, etc.) ;
- Knowledge of methodologies and principles of application lifecycle management, experience with bug tracking, version control and requirements management systems.