Senior Application Developer
|Job Title:||Senior Application Developer|
We are currently seeking an Application Analyst / Developer who will report to the Director of Information Technology. The position will require working with end users to design and develop enhancements applications that are critical to the success of the business. In addition, the position will involve supporting existing applications – specifically our Telephone Number Administration System, called ANIMate. Knowledge and experience with Java based web development is required.
- Work with end users to design and develop enhancements to key business applications
- Support existing applications
- Work closely with IT operations on backup and disaster recovery solutions.
Required Knowledge and Experience:
- Experience in the following design principles and development methodologies SOLID, TDD, CI with Hudson as build
server, and Sonar for code quality analysis
- Experience using Spring (DI, MVC for REST) – as super framework to manage major aspects of application layer including DI, REST, scheduled jobs, database access
- Database development skills including SQL programming, solid understanding of relational database technologies, logical and physical data modeling.
- Must have a keen eye for UI design aesthetics and attention to detail
- Experience with the following web technologies: Tomcat, GAE, JSP, GWT, JSON
- Experience working in an Agile based development environment and use of standard development tools (Eclipse, Ant, SVN, Hudson, Maven)
- Experience developing SOAP and/or REST based web services with application reuse as an achieved objective.
- Strong understanding of XML and how to manipulate using document based and stream based API’s. Also, Slf4j or Log4j for logging
- Experience with ORM technologies (JDO/JPA preferred, Hibernate a plus)
- Strong verbal and written communication skills with other developers and business client
- BS in Computer Science or related degree required
- 5 – 7 years of server-side java based web development experience
- Proactive and willing to take ownership
- Ability to work within a small team in a fast paced environment
- Ability to work with “offshore” development team
The above statements are intended to describe the general nature and level of work being performed by most people assigned to this job. They are not intended to be an exhaustive list of all responsibilities, duties and requirements.