Before working with Django at Kogan I used SQLAlchemy. One of the many features I liked about SQLAlchemy was you had the freedom to join tables on any clause. This is especially useful for when you have a not-quite-normal schema and the data _almost_ matches, for example, matching a denormalised ID from different systems.
Zoe's First Month
Hellooo! Nice to ‘meet’ you! I am so excited to share my application process, and first month’s experience at Kogan with all of you. Hopefully it can give you an idea of what you can expect during your application process, and what your first month will look like as a software engineer at Kogan.com.
Django on CloudRun
We've recently discovered the wonders of a CloudRun stack here at Kogan.
As a fast moving business we often need to quickly spin up new projects to demonstrate new ideas. We previously used Heroku, but for low-traffic or internal sites we didn't need the application to be running constantly: we're looking for a serverless solution!
Optimising Webpack Build Performance
Django Test Splitting on Circle CI
Django Test Splitting on Circle CI
One of the most important things you can do for your development teams' productivity is to shorten the feedback loop during development. This applies to getting feedback from customers or stakeholders to ensure you're building the right thing, as much as it does to testing the code you're writing to ensure no bugs have crept into your change set.
Today we're focusing on the Development - Test feedback loop. Developing a change and running your regression test suite to validate that change should be as fast as possible.
We've used three different systems to run our unit tests over the last few years. Beginning with a self-hosted Jenkins instance, transitioning to Travis CI, and finally arriving at Circle CI.
React JS Melbourne - August Meetup
Last Thursday we had the React Meetup once again! A quick summary of talks and relevant links are set out below:
Three speakers covered these topics:
Ben Teese talked on how to implement component/data colocation with Apollo Client and React - Slides
Alec McGavin spoke about what really happens when a React component re-renders - Repo
Basarat Ali Syed showed us the GLS layout system and how to make development at Australia Post a breeze - Link
Interest in attending a meetup? Join us next quarter! - https://www.meetup.com/React-Melbourne/
Making Heroku Subdirectories Easier
Monitoring Celery Queue Length with RabbitMQ
Earlier this week Matthew Schinckel wrote a post about how he monitors Celery queue sizes with a Redis backend.
RabbitMQ (https://www.rabbitmq.com/ is also a popular backend for Celery, and it took us a long time to get good visibility into our task queues and backlogs. So we'd like to share our solution for monitoring RabbitMQ celery queues for others that might be in a similar situation.