Senior Software Engineer

RailincCary, NC
Onsite

About The Position

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. The role involves collaborating with business and/or UX teams to create appropriate user interfaces, assisting with mock-ups and user interface design, and incorporating UX components into applications. The engineer will also be responsible for ensuring the system can meet or exceed defined SLAs, responding to pages within 15 minutes when acting as primary on-call, and resolving production issues. Development responsibilities include completing stories within estimates, conducting analysis and design work, preparing technical documentation, estimating work effort, following the development process, and working with infrastructure services for configuration changes and application deployment. Technical leadership involves evangelizing common practices, exhibiting technical leadership in a subject domain, identifying new technologies, mentoring peers and junior developers, and driving innovation in development, release, and operations processes.

Requirements

  • 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 experience.
  • Comfortable with front-end, middle tier and backend technologies.
  • Experience in front-end technologies like Angular or equivalent.
  • Expertise in Spring, Spring Boot.
  • Hands-on experience building containerized applications; Kubernetes experience a plus.
  • Knowledge of networking concepts such as DNS, HTTP APIs, and managing REST services.
  • Experience with Agile software development methodology.
  • Expertise in using version control software like Git.
  • Experience with handling deployment processes, deployment environments, production application troubleshooting techniques etc.
  • Experience working with AWS cloud native services like S3, CloudFront, Lambda, ELB, SNS, SQS and Route53 is a plus.
  • Experience deploying application components in AWS EKS clusters.
  • Experience using relational and NoSQL databases.
  • Experience with Aurora RDS, PostgreSQL, and DynamoDB is a plus.
  • Experience with security concepts such as handling JWT tokens and understanding OIDC flows.
  • Experience working with messaging and MQ brokers is a plus.
  • Experience in using Infrastructure-as-Code technology, like Terraform, is a plus.
  • Bachelor’s degree in computer science or equivalent field desired and 7 years of technical experience or Master’s degree in computer science or equivalent field desired and 3 years of technical experience.
  • Minimum of 7 years of experience in a development environment.

Nice To Haves

  • Kubernetes experience
  • Experience working with AWS cloud native services like S3, CloudFront, Lambda, ELB, SNS, SQS and Route53
  • Experience with Aurora RDS, PostgreSQL, and DynamoDB
  • Experience working with messaging and MQ brokers
  • Experience in using Infrastructure-as-Code technology, like Terraform
  • AWS Developer or Solutions Architect certification

Responsibilities

  • 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 and conduct system/performance/volume/stress testing.
  • Collaborate with business and/or UX team to create appropriate user interfaces.
  • Assist with mock-ups and user interface design.
  • Incorporate UX components into applications.
  • Provide feedback to UX teams.
  • Ensure the system can meet or exceed defined SLAs.
  • When acting as the primary on-call, respond to pages within 15 minutes and resolve or escalate issues as necessary.
  • Resolve production issues and communicate resolutions to appropriate stakeholders.
  • Complete stories within estimates and with quality to ensure release dates are met.
  • Conduct analysis and design work.
  • Prepare technical documentation.
  • Estimate work effort (story pointing) and task-out development effort for a given story or task.
  • Follow the Railinc development process and suggest improvements.
  • Work with infrastructure services to make configuration changes and deploy applications.
  • Evangelize Railinc common practices and development procedures.
  • Exhibit technical leadership in a given technical subject domain.
  • Identify new technologies and approaches that may improve our quality, productivity, and capabilities.
  • Mentor peers and junior developers.
  • Delegate and coordinate functional development tasks as needed.
  • Drive innovation in the development, release, and operations processes.

Benefits

  • Results: We deliver on our promises to create value for the freight rail industry through talented people, good ideas, business leadership and great technology.
  • Collaboration: We collaborate with our teams and our customers to get the job done, respecting individual ideas and contributions, and moving forward in pursuit of shared goals.
  • Service: We serve the changing needs of our customers and our industry to enhance the value they bring to our community, the environment, and our economy.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service