Position Title: SOFTWARE ENGINEER
Client: RailINC
Location: Cary, NC(Onsite) In Person Interview required
Senior Software Engineer will develop, maintain, and support new or existing software products while evangelizing and applying the best practices of software development. Responsibilities include the ability to work independently and as part of the leadership group of a larger team to deliver quality solutions across all phases and layers of the software lifecycle.
JobAccountability/Responsibilities
Quality:
- Meet or exceeds test coverage goals set for theproject through creation of unit and functional tests.
- Minimize the number of production escapes.
- Support user acceptance testing.
- Support or conduct system testing, performance,volume, and stress testing.
Usability/User Experience:
EqualOpportunity Employer
- All qualifiedapplicants will receive consideration for employment without regard to race, color, age, religion, gender, nationalorigin, disability, veteran status, or other legally protected status.Collaborate withbusiness and/or UX team to create appropriate application User interfaces.
- Assist withmock-ups, user interface design.
- Incorporate UXcomponents into application.
- Provide feedbackto UX team.
ProductReliability & Response:
- Ensure system can meet or exceed defined SLA's.
- When primary on-call respond to pages within 15 minutesand resolve or escalate issue, as necessary.
- Resolve production issues and communicateresolution to appropriate stakeholders.
Development:
- Complete stories within estimates and with qualityto ensure release dates are met.
- Conduct necessary analysis, design and preparetechnical documentation.
- Estimate story sizes and task out development for agiven story.
- Follow the Railinc development process and suggestimprovements.
- Work with infrastructure services to makeconfiguration changes and deploy applications.
Leadership (Technical):
- Evangelize Railinc common practices and developmentprocedures.
- Exhibit technical leadership in given technicalsubject domain.
- Identify new technologies and approaches that mayimprove our quality, productivity, and capabilities.
- Mentor peers and junior developers.
- Delegate and coordinate functional developmenttasks as needed.
- Drive innovation in the development, release, andoperations processes.
Key Measures:
- Measurable objective metrics.
Knowledge, Skills,abilities/minimum requirements/competencies:
- Works under deadlines and subject to heavy project load.
- Ability to provide technical expertise to others and explain concepts with technical staff.
- Ability to operate independent of supervision with extreme accuracy and attention to detail.
- Experience in defining requirements, designing, and illustrating process flows, and training users.
- Ability to communicate and follow up professionally (written and oral) both internally and externally within the organization including documentation of application requirements.
- Demonstrated ability to identify and resolve issues effectively.
- Ability to mentor others.
- 7 years of Java/J2EE Web Development Experience.
- Comfortable with front-end, middle tier and backend technologies.
- Expertise in front-end technologies like Angular, Spring MVC or equivalent, hands-on experience in these technologies a must in last 3 years.
- Expertise in Spring, Spring Boot and hibernate or equivalent ORM, hands on experience in these technologies a must in last 2 years.
- Experience is working with Docker and Kubernetes environment, hands on experience in building docker applications.
- Web Service SOAP/REST expertise, especially as a service provider.
- MDB/MDP/Broker/Service Bus MQ technologies development experience in last 2-3 years is a plus. If the candidate is just familiar with MQ or has minimal experience, needs to be really strong in specific front-end, backend technologies of Struts/Spring/hibernate.
- Expertise using Tomcat servers.
- Experience with Agile software development methodology.
- Expertise in using version control software like git, etc.
- Strong understanding of deployment processes, deployment environments, production application trouble shooting techniques etc. too.
- Experience to work with AWS cloud native services like S3, CloudFront, Lambda, ELB, SNS, SQS and Route53.
- Experience to deploy application components in AWS EKS cluster and to debug any issues.
- Experience in using Aurora RDS for database.
- Experience in using Amazon MQ for message broker service will be a plus.
Education, experience, certification/training
- Bachelor s degree in computer science or equivalent field desired and 7 years of technical experience or
- Minimum of 7 years of experience in a development environment.
- AWS Developer or Solutions Architect certification will be a plus.