If you’ve came this far: You’re still not done learning ;) But at least now you get paid to learn.
We expect “non-technical” employees to solve problems with tech/code.
This page is a list of knowledge we expect employees to acquire over time, and also a list of practical coding challenges which can be used to both automate useful tasks in the business and be educational for the employee.
You should know/understand
- Shopify’s product taxonomy, Product Category replaces need for product type
- translate and adapt app to translate store content, both text and images.
- Different country level domains famme.no (Norwegian), fammestore.dk (Danish), famme.se (Swedish) etc.
- Relative URLs and why they are important, for example keep customer on the right domain when following links
- URL redirects, and how they can be used to create nice short URLs for marketing purposes: /outlet -> /collections/outlet
- URL redirects, how they can be used to send to external urls: /rules -> https://drive.google.com/…. if some pdf we want to share is hosted on google drive
- Multifeeds app. How it creates a product feed per country, a tsv file. How the settings in the app affects the feed file created
- Google reads the feed (tsv file) and puts it in merchants.google.com which again is integrated with ads.google.com to show products in google shopping
- Search & discovery app, how it is used for filtering and search and how to group values, for example color. Group “Red” = “Red”, “Burgundy”, “Wine” etc.
- Metafields: Extra fields for products, customer, variants etc. when the standard fields are not enough.
- How export and import works in Shopify and pitfalls to avoid
Challenges:
- Find one wrong translation and fix it
- Find one category that is not correct and fix it
- Look over all country level feeds and see if some of the settings are inconsistent across countries or wrong.
- Find at least one product missing metafield value and set it, for example size guide metafield (page reference)
Coding challenges (for internal employee training)
For all of these AI can be used to understand the problem and generate the code.
Filtering of CSV
Export csv of all products from Shopify, make a script that reads the csv and print out the title of all products where the description, body html, contains “https://famme.no”
Make both a version of the script that just finds any csv in the Downloads folder and does the filtering on all CSVs
and a version of the script that takes command line argument: python filter_csv.py --file=products.csv
Why? To find products using absolute links instead of relative for internal linking.
Video editing
Make a bash oneliner to edit out first 10 seconds of a video named test.mp4 and save it as test_edited.mp4
Probably need to install ffmpeg, brew install ffmpeg
on mac.
Group by on a column in CSV to add counts
In databases you can use group by
like select count(*), column from table group by column
to get a count of each unique value in a column.
In python you can either use some data science library like pandas for a similar syntax, or do it “manually” with a dictionary / loop.
In the Warehouse & CS base we have a complaints table
Create a python script that reads the csv file you get by clicking “Download CSV” after clicking on the view. If you don’t find it just google “How to download CSV of airtable view” and you will find the answer.
When you have the CSV file, for example for a specific factory’s defect (depending upon view), your script should read the CSV and print out the count of each unique value in the column “product”.
Example output:
Lunge Scrunch Leggings: 10
Motion Leggings: 5
download images from urls in a csv
Use the same CSV as above. Download all the images from the “attachment” column in the CSV and put them
in ~/Downloads/complaints_images
, the folder should be created by the script if it does not exist.
Finding discounted products: X%+ off products
Read the CSV of all products from Shopify, and print out the title of all products where the price is X% or more off the compare at price. X should be a command line argument.
To run the script: python find_discounted_products.py --file=products.csv --min_discount=20
This should print out all products where the price is 20% or more off the compare at price.
Using the domain.com/products.json endpoint and group products by product type
Make a script that reads the json from the endpoint and prints out the count of each product type.
Example output:
Leggings: 10
Tops: 5
Use the requests library in python to get the json from the endpoint. The url is https://famme.no/products.json
Also open https://famme.no/products.json in the browser and see if you can understand the structure of the json.