> Markdown version of [/jobs/ext/3317973-software-engineer](https://www.wearedevelopers.com/jobs/ext/3317973-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer - **Company:** Perforce Software, Inc. - **Location:** Bracknell, UK - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Microsoft Windows, Artificial Intelligence, Unit Testing, Bash Shell, Command-Line Interface, Code Generation, Cursor (Graphical User Interface Elements), Linux, Distributed Systems, Graph Database, Hardware Design, JSON, Python (Programming Language), Open Source Technology, Parsing, Perforce, Software Engineering, Subversion, System Programming, Deep Learning, Git, Integration Tests, Data Management, Software Version Control, Golang - **Published:** September 5, 2026 - **Apply:** https://startup.jobs/senior-software-engineer-python-iplm-perforce-software-8778047 ## About the Role * 5+ years of professional software engineering experience, with strong day-to-day Python, Golang and system programming, distributed systems. * Command-line tooling experience: argument parsing, subcommand design, structured (JSON) output, and machine-readable error handling * Experience with version control systems such as Perforce and Git. * Solid grasp of testing practice: writing and maintaining unit and integration test frameworks. * Comfort working in a Perforce/Helix Core environment (or willingness to learn); familiarity with source-control internals in general * Clear written communication - you can capture design decisions and patch rationale in tickets and technical documents that outlast the conversation * Comfortable with using Linux, both for daily use and managing development systems. Experience in bash scripting and diagnosing system issues., * Prior experience building or maintaining a Python CLI used by other engineers as part of their daily workflow * Graph database experience is a plus. * Exposure to IP lifecycle management, EDA tooling, or the semiconductor / hardware design domain * Experience with basic development on Microsoft Windows; building and packaging Windows applications. * Hands-on use of AI-assisted development tools (Claude Code, Copilot, Cursor, or equivalent) - you have opinions about where they help and where they don't * Experience designing or operating agent-based automation for CI, QA, or code-generation workflows * Background in Rust or another systems language; interest in ML/applied deep learning * Contributions to open-source Python or CLI tooling ## Description The Perforce IP Lifecycle Management (IPLM) suite - used by semiconductor and hardware design teams to manage their intellectual property (IP), releases, and dependencies at scale - includes a Python command-line client (pi), the IPLM API server, the PiCache caching layer, and a Web based interface. As a Senior Software Engineer on the IPLM team, you will own end-to-end features across the CLI and PiCache. You will be expected to work closely with the server team that provides the API and database layers, as well as solutions and support teams to help resolve customer errors. This role blends product feature work, systems engineering, and modern AI-assisted development practices., * Design, implement, and ship user-facing pi commands and subcommands spanning IP, workspace, release, update, and snapshot workflows which are driven by our customer needs. * Extend the CLI's data-management layer, including integration with Perforce, SVN and Git-based version control systems. * Diagnose and fix regressions in the CLI's integration and unit test frameworks; keep development branches releasable * Prototype and productionize AI-assisted development workflows (agent-based QA loops, automated implementation workflows) that plug into the team's day-to-day development ## Related Videos - [From Punch Cards to AI-assisted Development](https://www.wearedevelopers.com/videos/611-from-punch-cards-to-ai-assisted-development) - [How a Small Team Shrank a Microsoft Monorepo by 94%](https://www.wearedevelopers.com/videos/1236-how-a-small-team-shrank-a-microsoft-monorepo-by-94) - [Docker network without Docker](https://www.wearedevelopers.com/videos/1418-docker-network-without-docker) - [Tips and Tricks for Working with JSON](https://www.wearedevelopers.com/videos/1229-tips-and-tricks-for-working-with-json) - [Docker exec without Docker](https://www.wearedevelopers.com/videos/1094-docker-exec-without-docker) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) ## Related Articles - [How We Built a Worry-Free System That Runs for 10+ Years – And What We’d Do Again](https://www.wearedevelopers.com/magazine/751-how-we-built-a-worry-free-system-that-runs-for-10-years-and-what-we-d-do-again) - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [The Best X (Twitter) Accounts for Developers](https://www.wearedevelopers.com/magazine/294-the-best-x-twitter-accounts-for-developers) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline)