Author: Tal Rotbart, CIO
Why would you want to join PageUp's development team?
Let’s start with our product development culture:
- Build the right thing - we utilise exploratory research and the Jobs-to-be-Done framework to really understand what jobs our users are 'hiring' our products to do. Further, we leverage lean-startup style test-and-learn loops to gather validated learning and incrementally release value to our users. Everyone in the team is engaged in this process -- it is not something relegated to a separate product strategy team.
- Aligned Team Autonomy - we allow teams to pick the tools they use to solve the problems at hand. Sometimes that means using new technologies, other times that means using existing ones that we've built sensible defaults for.
- Empowered decision making - Our rule of thumb for whether we have the right structure and process is: Does a decision take at most two other people to make? Can it be made at this level or does it have escalate higher? If the answer to any of the above is no, we need to change something -- we've recently change our organisational structure to support this -- into strategically aligned cross-functional value streams -- and yes, that means having representation from marketing, sales & customer success integrated into our product teams.
- Engagement - our engagement results are higher than CultureAmp “New Tech” benchmark report, and our Glassdoor score is 4.0. Anecdotally, a developer left me the following note when he finished a two week internship: “I'm sure you're already aware, but [there] really is something special between those walls and it was a privilege to experience it!”
-
Agility - it is deeply embedded in our culture, and has been for a while. The entire organisation (even Marketing) is run in an agile way.
Choose Your Own Mentor - as people developments is a core cultural value for us, each members of the team gets to choose a mentor (or two), who can help then develop their craftsmanship. - We Celebrate Failure - we believe that failure is an extremely valuable part of a learning culture. Fear of failure is a paralysing force that we’d like to avoid in our team, and instead, empower our team to experiment and learn.
- Accountability - This word is often bandied about in top-down command and control organisations, which breeds understandable resistance. To us, accountability is a commitment a person, or a group of people, is making to another. One of our values is Integrity, and that includes keeping your promises -- or if you can't -- taking ownership of it. Example: I am personally accountable to the entire product team, to create an engaging work environment for them and I measure whether or not I am successful at doing so through our engagement survey and through my 1:1s with them.
Example: I am personally accountable to the entire product team, to create an engaging work environment for them and I measure whether or not I am successful at doing so through our engagement survey and through my 1:1s with them
- Quality is Ours to Own - our teams own their quality and their ops. In the first two years since we parted ways with our dedicated QAs, our overall support load (as scaled by number of customers) has dropped by over 15% year over year.
- We are Flex - we respect work is one part of your life so we accommodate flexibility and the opportunity to work from home. We even get paid time to do volunteer work!
- Zing - we want to push the boundaries and dedicate two days each quarter to come together as a business (we have global team input) and run TuneUp, our interpretation of a hackathon. We’ve also been experimenting with a double-TuneUp -- four days instead of two!
Our development teams in Melbourne and Manila work on our Talent Acquisition and Retention platforms. A bit about the tech stack they work on:
We're fully hosted on AWS. Even the legacy part of our software is deployed daily to five AWS regions, where as our more modern code is in continuously delivered microservices & single page apps. Some of our microservices are completely serverless (AWS lambda) and some are written in .NET Core running on Linux within Docker container clusters. The single page apps are written in React (with either JavaScript or TypeScript). We have some older SPAs which are written in Angular 1 or 2 (on TypeScript).
However, it is not all a bed of roses, as any successful software company with a long enough history will attest, we have a significant amount of product complexity and technical debt that we are wrangling with on any given day.
With two decades years of history, while our more modern code is as above, we also have everything else in the entire range of .NET’s rich history, including a significant amount of ASP Classic pages.
We are aiming to tackle our product complexity by strategically and incrementally breaking up our .NET app into continuously delivered microservices and single-page apps, utilising event-driven architecture and domain-driven design as well as diversifying our technology stack and experimenting with new technologies.
This is to enable our product teams to innovate autonomously, and to aim to answer the question: how do you provide a unified experience to our users, while delivering software independently?
Our development team in Ireland and the UK work on our Recruitment Marketing platform. The tech stack they work on looks like this:
This industry is evolving at a rapid pace and if you join the team you’ll get a chance to really shape the future of the platform. We are designing, testing and shipping code on a daily basis, we like to move fast. We have a focus on designing and writing clean code and are exploring Event-Driven Architecture. Our platform is hosted in AWS and built on Ruby on Rails, using MySQL database for storage running on Ubuntu Linux. We use MiniTest and Webdriver to test our code, and use AWS CodePipeline and GitHub to deploy our software to production several times a day.
If you’re interested in heavy lifting and are the kind of developer that leads by doing and love collaborating with smart people to solve real customer problems -- we are the place for you.