Computer Programmer (Java)
Technology
Pay Level: Negotiable
SUMMARY:
The Computer Programmer (Java) will work with a team of other programmers to perform software design, development and maintenance activities. This will include configuring, customizing and developing our Java applications. He/she will leverage the following Java technologies: Servlets, JSF, JDBC, JPA, Seam Framework, JUnit, Eclipse IDE, Maven, and Ant. He/she will work to contribute to the overall objective of delivering functioning, well-designed and maintainable applications.
ESSENTIAL DUTIES AND RESPONSIBILITIES:
- Participate in all phases of the software life cycle development.
- Participate as a member of a development team.
- Research and participate in fact-finding to gather user and system requirements.
- Produce maintainable code that meets technical specifications
- Unit and system test his/her own code as well as the code of co-workers
- Debug programs, identify source of issues, and propose and implement appropriate solutions
- Document usage instructions & processes for both developers and users.
OTHER DUTIES AND RESPONSIBILITIES:
- Respond to and resolve service requests from users.
- Provide technical training and assistance to users and other technical personnel regarding usage of newly developed or enhanced software
- Participate in technical problem solving discussions with his/her team or other teams
- Performs other work-related duties and special projects as assigned
QUALIFICATIONS:
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability desired. Reasonable accommodations may be made to enable individuals with disabilities to perform essential functions.
KNOWLEDGE, SKILLS AND ABILITIES:
- Knowledge of:
- Computer science concepts, languages and technologies (especially Java, HTML, SQL, XML, and JavaScript)
- Version Control Systems (especially Subversion)
- Object oriented programming concepts
- Software configuration and testing (especially automated testing tools)
- Composition of detailed end-user documentation and provision of end-user support
- Usage of Oracle RDBMS
- Principles and techniques of systems analysis, design and programming
- Software Development Lifecycle
- Ability to:
- Analyze and solve problems
- Communicate clearly both verbally and in writing
- Read, understand, and write computer code
- Learn new programming technologies
- Troubleshoot errors in data and program logic
- Assist other programmers
- Research and learn third-party software and APIs
- Write clear and concise programming documentation
- Notice areas needing improvement and offer suggestions
- Maintain a strong team mentality
- Multitask and prioritize assignments with a focus on meeting deadlines
- Apply technical standards, principles, theories and techniques such as change and release management. o Prepare flow charts and diagrams for technical solutions
- Compile, organize, analyze and present statistical and technical data
EDUCATION AND/OR EXPERIENCE:
Bachelor's degree in computer science, information technology, mathematics or related field or equivalent years of professional work experience, and at least 1 year experience in computer programming positions of increasing complexity, or equivalent combination of education and experience. Experience can be met through internships (paid or unpaid).
Made for Something: Part 3
Made for Something: Part 2