Need Local Only , We can Do C2C
Title: Software Engineer
Duration: Long term
Location: Cary , IL
Job Description:
Summary/Objective:
A Software Engineer will develop, maintain, and support new or existing software products while applying the best practices of software development. Responsibilities include the ability to work independently and as part of a larger team to deliver quality solutions across all phases of the software lifecycle and across all layers of a software solution.
Job Accountability/Responsibilities
Quality:
• Meet or exceed test coverage goals set for the project through creation of unit and functional tests.
• Minimize the number of production escapes.
• Support user acceptance testing.
• Support or conduct system testing, performance testing, volume testing, and stress testing.
Usability/User Experience:
• Collaborate with business and/or UX teams to create appropriate application user interfaces.
• Assist with mock-ups and user interface design.
• Incorporate UX components into the application.
• Provide feedback to the UX team.
Product Reliability & Response:
• Ensure the system can meet or exceed defined SLA's.
• When primary on-call, respond to pages within 15 minutes and resolve or escalate issues as necessary.
• Resolve production issues and communicate resolution to appropriate stakeholders.
Development:
• Complete stories within estimates and with quality to ensure release dates are met.
• Conduct necessary analysis, design, and prepare technical documentation.
• Estimate story sizes and task out development for a given story.
• Follow the Railinc development process and suggest improvements.
• Work with infrastructure services to make configuration changes and deploy applications.
Leadership (Technical):
• Evangelize Railinc common practices and development procedures.
• Exhibit technical leadership in a given technical subject domain.
• Mentor peers and junior developers.
• Delegate and coordinate functional development tasks as needed.
• Drive innovation in the development, release, and operations processes.
Key Measures:
• Coverage, production escapes.
• Customer satisfaction score.
• System SLA, number of outages.
• Release scope, schedule, and budget.
• Releases.
Knowledge, Skills, Abilities / Minimum Requirements / Competencies
• Works under deadlines and is subject to a heavy project load.
• Ability to explain concepts to technical staff.
• Ability to work independently but also effectively with all co-workers; must be a team player.
• Ability to multitask and prioritize (professionally handle issues and assignments in various stages of resolution on an ongoing basis).
• Ability to communicate and follow up professionally (written and oral) both internally and externally within the organization.
• Demonstrated ability to identify and resolve issues effectively.
• Demonstrated high degree of accuracy and attention to detail.
• Strong Java fundamentals and good design skills.
Education, Experience, Certification/Training
• Bachelor’s degree n Computer Science or equivalent field desired.
• Minimum of 3 years of technical experience.
• Full lifecycle project experience; Agile preferred.
• Experience with Spring, Spring Boot, Hibernate (ORM), Oracle, and Postgres preferred.
• Experience working with Docker and Kubernetes environments preferred.
• UI experience – Angular 2 and above, JavaScript, jQuery, CSS preferred.
• Exposure to AWS technologies preferred (especially serverless technologies such as Lambda, S3, DynamoDB, etc.).