SOFTWARE ENGINEER II, PHP in Aurora, IL at The Geo Group

Date Posted: 8/10/2017

Job Snapshot

Job Description



Summary

Develops and modifies software programs of a high degree of complexity and scope, using a thorough knowledge of current software development techniques and capabilities.  Provides technical support to applications programmers and lower level software engineers.  Works to achieve the most efficient use of available hardware through effective use of software programs and routines.



Primary Duties and Responsibilities

  • Designs, develops and documents technical aspects of computer software systems and related hardware interface components, based on functional and system requirements, to produce accurate and timely results for Company products, with assistance from more senior developers when necessary.
  • Maintains and supports existing Company software systems until completely phased out and replaced by updated versions.
  • Tests, evaluates, and tracks software defects to maintain a clear record of development status and known function anomalies.
  • Maintains current knowledge of new computer software technology and solid knowledge of electronic monitoring industry and user trends for Company products.
  • Prepares and provides product training for Company technical support and systems administration staff, as needed
  • Provides high-end technical support, trouble-shooting and problem resolution for internal user and technical support groups.
  • Develops and documents functional specifications for Company designed products.
  • Develops software solutions by studying information needs; conferring with users; studying systems flow, data usage, and work processes; investigating problem areas; and following the software development lifecycle
  • Provides ad hoc custom reports for customers, operations and management.
  • Supports testing efforts during quality assurance and user acceptance testing in order to ensure quality and punctual software development within area of responsibility.
  • Provides mentoring and technical leadership and guidance to less experienced software engineers.
  • Assists with project planning.  Suggests improvements to complete projects on time.
  • Participates in scrum meetings to provide project status and identify roadblocks, as necessary.
  • Participates in Sprint Planning to plan the work and development tasks for the next software release.
  • Performs other duties as assigned.

Job Requirements



Minimum Requirements

  • Bachelor's Degree in Computer Science or related field.
  • Minimum four years' hands-on software development experience.In-depth software development experience and skills in at least four of the following areas, and some level of experience and proficiency in the others:
    • Web development skills: PHP, CSS, Bootstrap, XML, SOAP, HTML, jQuery, JavaScript, ASP.NET MVC.
    • Standard Development Skills: 4GL, SQL, Object Oriented Development, C#.
    • Technologies: Zend Framework, Apache, IIS.
    • Environment/Platforms: RHEL, CentOS, Debian, Windows.
    • Toolsets: Secure CRT, Visual Studio.
    • Database: Relational database experience, Informix, MySQL, SQL Server.
    • Source Control:  knowledge of change control technologies
  • Thorough familiarity with the product development life cycle and extensive hands-on experience with multiple methodologies.
  • In-depth understanding of iterative software development lifecycle methodology, such as Agile.
  • Proficiency in project management techniques and practices.  Ability to build development work plans for self and team.
  • Solid understanding of relational databases.
  • Outstanding technical and analytical skills.
  • Ability to provide technical mentoring to peers, evaluate technical alternatives and provide technical recommendations to management.
  • Ability to design, analyze and develop system applications.
  • Ability to analyze, troubleshoot and resolve complex technical problems.
  • Outstanding written and oral communication skills with cross-functional groups to determine functional requirements for new software.
  • Ability to clearly and professionally communicate with business users, team members and management.
  • Ability to produce clear documentation and reports that can be understood by both technical and non-technical audience.
  • Ability to plan and report daily activities and progress on assigned tasks.
  • Excellent customer service skills.
  • U.S. Citizenship required.
  • Ability to pass a federal background check and obtain a suitability determination.
  • Ability to maintain confidentiality with regard to information stored in operational databases.
  • Ability to work with computers and the necessary software typically used by the department.

EOE AA M/F/Vet/Disability