Main Content

Software Engineer - Java EE and Linux

Position: Software Engineer - Java EE and Linux
Reports To: Vice President - Distributed Systems Development
Location: Winston-Salem, NC

Position Summary:

The role of the Software Engineer is to design and develop large scale, high quality and highly performant systems for mission-critical applications and business services to various business customers.   This role is responsible for:

  • Software Design and development of the Company’s Linux/Java application code and supporting tools
  • Operating and collaborating within disciplined software development processes and best practices that are focused on ensuring quality, efficiency and adherence to industry standards
  • Design new systems from the ground up, leveraging existing systems’ knowledge to create new platform solutions
  • Migrate existing legacy systems to new Java EE/Linux platform.

Qualifications Required:

  • Bachelor's degree or equivalent work experience in the field of Computer Science, Information Systems, Computer Engineering or other related field.
  • 7+ years related software development experience, including experience as a technical lead
  • Experience working with and designing large-scale systems based on Java Technology
  • Knowledge of the following Distributed Technologies:
    • Languages: Java EE, Java SE, XML, HTML/5, CSS, JavaScript frameworks, JSON, SQL, UML
    • Methodologies / Frameworks:
      • Spring (Core, MVC, Security, Integration, Data), JMS, jdbc, ldap, Maven, Jenkins, Junit, iBatis, AOP, JPA, Hibernate
    • Database Management: DB2, MS SQL
    • Operating Systems: AIX, Linux, Windows
    • Other Technologies: IBM Websphere, WMB, Team Foundation Server (TFS)
  • Knowledge of common software development/JEE patterns
  • Strong knowledge of Object Oriented development concepts
  • Attention to quality and disciplined software development practices including: Unit testing, documentation, build and release management
  • Knowledgeable of Waterfall & Scrum Project Management methodologies, processes, and deliverables
  • Proficient with Microsoft Office toolset (e.g., Excel, Word, PowerPoint)
  • Knowledge of Enterprise Architecture Principles for Distributed Development
  • Experience with Service Oriented Architecture & Web Services
  • Experience with Message Oriented Middleware
  • Experience and strong knowledge of relational databases and ORM technologies
  • Experience with Unix scripting
  • Experience with Full Software Development Lifecycle

 

Qualifications Desired:

  • Certifications a plus
  • Strong analytical and problem solving skills
  • Knowledge of NoSql databases and concepts
  • Advanced knowledge and understanding of information processing principles and practices
  • Basic knowledge in core enterprise IT infrastructure
  • Basic technical knowledge of network, PC, and platform operating systems with emphasis on Linux/AIX/DB2
  • Basic knowledge of applicable data privacy and security practices as relevant to IT compliance
  • While this position primarily focuses on the JEE stack, any .Net development experience is a plus

Essential Functions and Responsibilities:

  • Develop Software designs and technical specifications for large scale mission critical systems
  • Consult on building sound software development practices and process for high-performing team
  • Perform as a technical lead for Java development team(s)
  • Adhere to strong Application development techniques
  • Software Development
  • Software Deployments for Coding, Patching, etc
  • Support the coordination of Component/Unit Testing

Physical Demands and Work Environment:

  • Ability to remain seated for long periods of time while working on computer or editing
  • Ability to work under highly stressful deadlines
  • Ability to handle multiple tasks simultaneously
  • Ability to prioritize appropriately
  • Ability to sit and review information on a computer screen for long periods of time

Apply Below*:

  • A letter of interest describing your experience and interest in the position
  • Your resume
  • Names and contact information of three references, or three letters of reference

* Please submit a single application per position.

Submit Your Resume