A Java project for the Shopify Technical Challenge interview process.
technical-challenge/
├── pom.xml # Maven configuration
├── README.md # This file
└── src/
├── main/
│ └── java/
│ └── com/
│ └── shopify/
│ └── App.java # Main application class
└── test/
└── java/
└── com/
└── shopify/
└── AppTest.java # Unit tests
- Java 17 or higher
- Maven 3.6 or higher
# Clean and compile
mvn clean compile
# Run tests
mvn test
# Package the application
mvn package
# Run the application
mvn exec:java
mvn exec:java
# First build the JAR
mvn package
# Then run it
java -jar target/technical-challenge-1.0-SNAPSHOT.jar
The project includes comprehensive unit tests using JUnit 5:
# Run all tests
mvn test
# Run tests with verbose output
mvn test -X
- Java 17: Uses the latest LTS version of Java
- Maven: Modern build tool with dependency management
- JUnit 5: Modern testing framework
- Comprehensive Testing: Well-documented test cases
- Executable JAR: Can be packaged and run independently
- Create new Java files in
src/main/java/com/shopify/
- Create corresponding test files in
src/test/java/com/shopify/
- Follow the existing naming conventions and documentation patterns
- Use Java 17 features where appropriate
- Include comprehensive JavaDoc comments
- Write tests with clear documentation of purpose and expected behavior
- Follow standard Java naming conventions
This project is part of the Shopify Technical Challenge interview process.