Senior Software Engineer

Perforce Software Logo

Perforce Software

💵 $120k-$144k
📍Remote - United States

Summary

Join Perforce, a collaborative community of experts, and contribute to the development and maintenance of large-scale web applications. You will work with a team of talented engineers, using agile methodologies to design, develop, and test features for our cloud-based applications. This role requires extensive experience in full-stack development, cloud technologies (Java, Spring, Keycloak, Rest API), and modern containerization techniques (Docker). You will also be responsible for mentoring junior engineers and ensuring high-quality code. The position offers a competitive salary and benefits package, including medical, dental, vision, retirement, life insurance, wellness programs, and paid time off. Remote work may be possible within the greater Cincinnati area.

Requirements

  • Bachelor’s degree in Computer Science, Computer Engineering, or a similar field, and 5 years of progressive post-baccalaureate experience as a Software Developer, Software Engineer or related occupation performing software development
  • 5 years of experience with full stack development
  • 5 years of experience in building large-scale web applications
  • 5 years of experience working with cloud based back end microservices including Java, Spring, Keycloak, Rest API
  • 5 years of experience with mobile application testing platform
  • 5 years of experience with Git, including branching, merging, and conflict resolution
  • 5 years of experience working with modern cloud applications and concepts, with solid understanding of fault tolerance, scalability, and consistency
  • 5 years of experience with Agile software development
  • 5 years of experience with creating modern containerized applications with Docker and container orchestration
  • 5 years of experience with continuous integration and continuous delivery (CI/CD)
  • 5 years of experience with monitoring, logging and alerting for 24x7 cloud applications; and 2 years of experience working with React.js , Javascript, CSS, HTML5

Responsibilities

  • Implement new features and enhancements to existing features in a dynamic and challenging codebase
  • Design tech solutions, interact with Software Architects and develop code according to the design using agile methodology
  • Implement new features arriving from product based on customer and internal needs
  • Guide and mentor more junior software engineers in the team to ensure that team maintains a high quality of work product
  • Maintain existing functionality, to keep it current in a rapidly changing environment
  • Update code to keep it current, adjust to new revisions, perform upgrades of third party components
  • Develop unit and integration tests for newly developed features and maintain exiting tests
  • Add developed tests to automation harness
  • Perform testing before or during the development
  • Write integration tests or end to end tests using live services like DB
  • Create tasks and estimates through the Agile software development process to satisfy product management, especially prioritizing backlogged items
  • Elaborate feature requirements with Product Manager/ Product Owner
  • Break down feature to code development tasks
  • Provide Engineering estimates (development & test time, necessary resources, etc.)
  • Design the development to epics (contains multiple stories) and stories (tasks)
  • Plan the sprint (2-3 weeks) with relevant stories
  • Write up issues found during active development to ensure that problems are solved immediately
  • Report issues found during development / testing in the issue tracking system
  • Work with modern cloud applications to analyze fault tolerance, scalability, and consistency
  • Conduct branching, merging, and conflict resolution using Git
  • Create modern containerized applications with Docker and container orchestration
  • Conduct continuous integration and continuous delivery (CI/CD)
  • Monitor, log, and alert for 24x7 cloud applications
  • Add new tasks based on identified issues and work with Product Management to add them to the prioritized backlog
  • Document identified functional and technical enhancements to the application to keep meticulous records of the product
  • Provide write ups and guidance to Tech Writers on newly developed functionality write to describe the feature, the best practices and limitations
  • Participate in code reviews as both a reviewer and as one being reviewed to ensure continuous improvement
  • Participate regularly in reviews a Reviewee, make changes decided during review

Benefits

  • Medical
  • Dental
  • Vision
  • Retirement benefits
  • Life insurance
  • Wellness programs
  • Total time off
  • May work remotely from within the greater Cincinnati area

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.