Software Engineers are detail-oriented and extraordinarily passionate. Our clients thrive on designing simple and scalable solutions to complex problems and delivering leading edge software products for their client users. We are looking for exceptionally ambitious and communicative hands-on individuals who are comfortable working as part of an interdisciplinary team, have experience working in fast-paced environments and who have passion and skills to take our product offering to the next level.
As a Java Developer you will work in a collaborative team environment that encourages you to perform at your best, and challenges you to engineer elegant solutions for complex business problems. You will work with senior developers and technical leads to design and develop robust and scalable server-side software for high-volume transaction web-based applications. You will be an accomplished developer, with applied knowledge of object-oriented design with appropriate use of best practices, design patterns, and frameworks and an appreciation of the implication of software designs and implementation choices on application performance and maintainability.
- Write readable, maintainable, and efficient code.
- Design, develop, and maintain web-based applications to enhance the performance and reliability of our current applications, as well as participate in the development of new industry-leading products, with proven advanced technologies.
- Design and develop service oriented architecture solutions, constructing and managing services published to both internal and external consumers, integrating with complex database and third party components.
- Collaborate with developer team members on best practices, code reviews, internal tools and process improvements.
- Proficiency in subject matter must be developed. Context and understanding is everything for a developer!
- BA/BS degree in Computer Science or related field required. Advanced technical degree and/or related training a plus.
- 2+ years of multi-threaded server-side web application development experience.
- Experience designing and implementing web applications with highly optimized and scalable architectures.
- Proven ability to work independently; designing, developing and deploying solutions, and to deliver projects on time with minimal direction.
- Strong Java skills and object-oriented design experience, including working knowledge of the Java web technology platform, applied use of design patterns, and MVC technologies.
- Strong database development skills including a solid understanding of database technologies, and logical and physical data modeling.
- Knowledge of session management, object relational mapping, XML web services, and agile development methodologies desired.
- Experience with Spring and Grails Frameworks and a plus.
- Excellent verbal and written communication skills.