Develop, create, and modify general computer applications software or specialized utility programs utilizing software packages considered. Responsible for designing software or customizing software for client use with the aim of optimizing operational efficiency. The technical skills include the knowledge of computer hardware and software.
Demonstrates hands-on expertise in J2EE technologies, specifically, Java, TomCat Server, Struts, Spring, JMS, and JDBC. Participates in business and technical information technology solution implementations, upgrades, enhancements, and conversions. Utilizes object oriented development tools to analyze, model, design, construct and test software systems. Uses test driven development techniques and testing methodologies such as JUnit & Automated testing. Investigates and resolves problems on software products and systems. Identifies areas for code improvement and refactors code. Participates in requirements review sessions. Contributes to project estimation process. Performs peer code reviews. Prepares system documentation.
- Bachelor degree in computer science or equivalent training required
- 5-7 years related experience required
- Exercises independent judgment
- Verbal and written communication skills, problem solving skills, customer service and interpersonal skills (Required)
- Ability to work independently and manage one’s time (Required)
- Basic mentoring skills necessary to provide support and constructive performance feedback (Required)
- Knowledge of design techniques and principals involved in production of drawings and models (Required)
Strong core competencies needed:
- Spring-web services based development
- XSD design and development
- WSDL design and development
- Database table design and DDL, DML development.
- Eclipse, SOAPUi, SOATest
- SOA / Web Services
- Agile software development practices
Major Job Duties and Responsibilities:
- Modify existing software to correct errors, allow it to adapt to new hardware, or to improve its performance
- Analyze user needs and software requirements to determine feasibility of design within time and cost constraints
- Coordinate software system installation and monitor equipment functioning to ensure specifications are met
- Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design
- Analyze information to determine, recommend, and plan computer specifications and layouts, and peripheral equipment modifications
- Build Restful web services that use JSon to support the iOS and Android mobile applications