Sr. Developer (Java)
Contribute to implementation, maintenance and support of packaged systems. Responsibilities include installation, configuring, documenting, testing of new and existing software applications; development of supporting scripts and stored procedures.
Bring specific applications and technology expertise to the specification and design development process as required. Receive technical guidance and day-to-day direction from Software Engineers and Sr. Software Engineers. Responsibilities
-- Software Development/Programming ~~ Maintenance & Documentation ~~ Testing & Testing Support ~~ Gain Subject Matter Expertise ~~ Production Support & Improvement
-- Under direct supervision, write new code using prescribed specifications and design documentation in accordance with programming standards. Modify, test and troubleshoot existing programs/software utilizing the appropriate hardware, database, and development/programming technology. Contribute to feature and functionality planning. Execute coding/modification of new and existing programs/software with focus on user experience and optimal program/system performance.
-- Maintain and modify programs/software. Make recommendations for improvements and/or remedies to issues encountered. Implement approved changes by amending flow charts, developing detailed programming logic, and making changes to code. Write and maintain development/programming/systems documentation, as well as operations and user guides (as required). Document development/programming problems and resolutions for future reference.
-- Effectively unit test all code and programs prior to releasing them to the quality assurance team. Resolve unit test issues in a timely manner. Assist the quality assurance team in identifying test cases and aid in creating/mining test data to enable a thorough test of development deliverables. Respond to inquiries and issues in a timely manner as the developed code/program moves through the testing process and ultimately into production.
-- Develop working knowledge in all systems, processes and data relating to the assigned business or projects. Develop expertise within the application development practice-including all processes, tools and best practices. Develop and maintain development/programming expertise and identify and pursue areas for development and training that will enhance job performance via on the job learning and best practices from prior projects, training and peer learning.
-- Provide production support to the end-user and technical operations staff as required. Research system/application issues/problems within area/program(s) of responsibility and recommend innovative solutions to prevent recurrence. Required Qualifications
• Bachelor's degree in Computer Science, MIS, or related equivalent experience considered.
• 5-7 years of experience working with and supporting Java 7 & 8 development, PL/SQL - Oracle 12c
• 5-7 years of experience working with and supporting Linux Servers and of basic understanding and experience with Networks, Linux shell scripting (bash)
• Demonstrated basic understanding of the Software Development Life-Cycle (SDLC) and programming/development procedures. Preferred Qualifications
• Effective oral and written communication skills along with logical, analytical and abstract thinking skills.
• Strong attention to detail, follow-through and time management skills.
• Experience and/or comfort working in a multi-sourced, multi-vendor environment.
• Demonstrated aptitude to quickly learn and apply new tools and processes.
• Technology Stack Preferred: Java - 7 & 8 development; MS SQL; Linux shell scripting (bash); Web services