I played a key role within a team of four talented software engineers, dedicated to maintaining and enhancing the FarmAfield website with innovative features and a user-friendly interface.
Notable Features
Dark Mode
My favorite feature to implement was a customizable theme feature, allowing users to effortlessly toggle between light and dark modes within their account settings. The website intelligently adapts to users’ device/browser preferences, with the option to override these settings for ultimate personalization.
Email Preferences
I contributed to an efficient email management system, enabling users to add a secondary email and adjust their marketing email preferences within their account settings. Utilizing AJAX POST requests, the user experience is optimized by eliminating the need for page refreshes.
Solar Landing Page
Expanding FarmAfield’s offerings, I designed an inviting landing page for the Solar site, connecting farmers with investors to fund solar panel installations on their land. View the site below:
Cookie Policy
I created a cookie policy and a cookie consent banner:
Notifications
I created the notifications drop-down menu and page. Users can mark the notifications as read to dismiss them without refreshing the page by making use of AJAX. All notifications can be found in the notifications page.
Miscellaneous Features
In addition to the notable features above, I also
- Wrote hundreds of unit tests increasing the code coverage from 53% to 82%
- Implemented parallelism in CircleCI to improve CI testing speeds by 100%.
Development Details
During my time at FarmAfield, I followed Agile development methodology and utilized an array of tools, including
- Django as the full stack web framework
- PostgreSQL for the database
- GitHub for version control
- Microsoft Teams for team communication
- Jira by Atlassian for work management and issue tracking
The programming languages I used were
- Python for backend
- HTML, CSS, and JavaScript for frontend
Reflection
Overall, I really enjoyed my time at FarmAfield. I learned a lot about web development and was introduced to tools that have changed the way I work. This internship has propelled my love for web development and caused me to develop Portfolio.v2 as a Django web app.