See what our interns are up to.
Together the Ivey MBA students helped Arcurve with strategic matters in the artificial intelligence and machine learning industry and learned lots along the way. It was a pleasure partnering with the students on this comprehensive project!
Once again, the data structures and algorithms class I took in school nearly two years ago is proving its worth in real-life industry. For the task I am currently working on, I am creating a list of trees of associated data. After setting up this data structure I flatten the data into a single list using .SelectMany() for a nicely formatted output.
I had a blast participating in the Pumpkin Carving Contest kickoff event! In just 20 minutes, we declared victory with our magnificent Super Jay pumpkin, flying across the Calgary skyline with Food Bank donations in hand. We even had an Arcurve bat signal in the background!
Recently, I had to write a lot of custom regular expressions to parse some data. Thankfully, I had RegExr to make the process as easy as possible. Not only does RegExr make it easy to understand how regex works, but it also provides handy testing tools to make sure all your cases are covered! I would highly recommend RegExr to anyone dealing with the pain of regex!
MVC stands for Model View Controller and is another design pattern that I got to see in action on my internship. While I learned this design pattern at school, I didn’t really know how to actually implement it till I started at Arcurve. I’ve since learned that it’s a great design pattern for keeping the codebase organized by separating backend and frontend functionalities.
Being an Arcurve intern means being flexible and up for the challenge. Sometimes that challenge isn’t software development, it’s moving a pallet full of Arcurve barbeque boxes from the office on the 17th floor down to the loading dock through the freight elevator. It took us nearly an hour, but we got it done!
To mark the end of summer internships, all the interns and the Arcurve leadership team spent the afternoon saying goodbyes at Pinbar! The Arcurve students received more swag and will all be sporting their new Arcurve backpacks as they return to school. Good luck to everyone at school and we will see you back at Arcurve soon!
After months of working remotely, the intern team (except for Taylor, who joined us in spirit from Victoria) finally decided to go into the office for a day! It was super cool experience to check out the new office, go out for lunch with Dani and Scott, and hold a CSR project meeting in the boardroom! We’re hoping to come back into the office a couple more times this month!
DBeaver is a SQL client app and a database administration tool. It can be used to access any database or cloud application that has an ODBC or JDBC driver, such as Oracle, SQL Server, MySQl, Salesforce, or MailChimp. The best part is that it is a free and open-source tool.
Bootstrap is a frontend framework developed by Twitter. It allows you to add fully developed, responsive and customizable HTML and CSS elements to a website. It is wonderfully easy to learn and allows us to avoid the normal pain of designing our own frontend elements such as buttons. All you need to do is import the bootstrap package and start building!
Now that I am part of two projects, recording my time has become a little trickier. But, in comes Toggl! Toggl Track is a simple application that allows you to enter a task name and start recording your time. If you forget to start a new task, Toggl keeps track of the applications that you had running so you can go back and recall what you were working on.
Working in .NET often requires the use of many different packages, which could be difficult to keep track of. Thankfully, NuGet package manager allows us to easily download, update, and track the packages we use on our project. This tool is integrated right into Visual Studio and makes package management simple across all solutions.
I am using Jira to guide me in testing the application called Complishield. I have come a long way from not knowing how Jira works to logging tasks, stories, and bugs. I’ve learned to test if the application is working properly and to test if the application’s features are working as intended. I must make sure all requirements of the clients are met within the story and try to test above and beyond it.
Recently, I got to be a part of our project celebration Zoom call with the client. To celebrate the successful completion of the first phase and recognize all the hard work put in, the project team members ate lunch together and played a couple of virtual games. It was great to hang out and get to know everyone better!
I’ve been put on a new project as the PM, with our high school students as developers. We are developing an efficient static view to track important metrics of company projects.
AWS Lambda is a serverless compute service that runs backend code in response to events that are executed in your application. You can write a Lambda function, small anonymous function, in most languages and once triggered the Lambda service will handle all the capacity, patching, scaling, and administration of the infrastructure to execute that code. There are multiple functionalities that come with this service which often makes it a more efficient solution than managing an infrastructure.
Recently I was put in charge of developing an entire reports page for our client. One of their primary requests was to use pie charts and filterable line charts to have meaningful metrics in an easily viewable state. I was able to complete this daunting task using the Radzen library for Blazor. The library contained premade chart components that I could customize based on my needs. If it wasn’t for this library, who knows how much time I might’ve spent making my own charts!
Recently, our intern group had the opportunity to pitch our CSR project. Using some of the feedback, here are three tips to deliver a great pitch! 1. Tell a Story: a great pitch should tell a story that engages listeners from the beginning to the end. 2. Be Prepared: make sure you know your content inside out and are prepared for any difficult questions that listeners may have. 3. Have a Concise Ask: Your ask should be specific, and its impact on the project should be easily identifiable.
Recently, my team met with our clients for a demo. It was my first time meeting the clients so I was excited to see how they would react to the new features we implemented. The response was positive, and their feedback was very helpful. I can easily see why demoing to users outside of developers is valuable, as they often pick up on things that we miss.
Our CSR project has had some ups and downs. We had troubles coming up with a solid contract, and going back and forth on labeling. Finally, after 2 months we have made some progress and are ready to begin pre-orders and advertising our product.
When I was learning about design patterns in school I often wondered if these topics had any relevance. It was only when I started my internship at Arcurve did I understand the significance of this topic. Dependency injection is one design pattern that I only recently started having an appreciation for. Dependency injection is deeply rooted in angular and is great for code reuse, low coupling, and is a great example of abstraction at work.
This week I got to meet one of our new high school students, Ana DuCristea. Ana is joining Arcurve for the next two months and will be working on the same project as me. I am super excited to work with Ana and learn from each other!
Recently, I got to demo a preview of a new app release to our clients! It was super cool (and a little nerve-wracking) to watch as the features I spent weeks designing and developing were showcased to our stakeholders. They were super happy with what we built and are excited to see the finished release soon!
In Angular, all libraries and the entire webpage is loaded as soon as the application is run. This can cause large web applications to load slowly. A great way decrease loading time is by implementing lazy-loading strategies. Lazy loading, aka on-demand loading, assists in loading the content in the web application as it is needed by the user. A helpful tool is the NGX-Quicklink implementation for Angular.
Using Microsoft Azure for the first time has gone rather smooth but wasn’t without some growing pains. Here are a few of my biggest learning points thus far: Always run tests before submitting a pull request You can commit after a pull request — turns out it wasn’t a coincidence that all the recently abandoned pull requests were mine Build can still fail despite working on your machine and it is incredibly frustrating! Hope these tips help other users!
If you are looking to create a flow chart or process diagram, then Microsoft Visio should be your go-to tool! Visio provides a great set of shapes and templates to build out any flow chart or process diagram you may need. Visio is simple to use and has built-in features for everything from UML diagrams to floor plans. So far, Visio has helped me visualize and understand complex client processes and map out any future processes that clients are looking to implement.
Sourcetree is a Git GUI developed by Atlassian (Creators of Jira and Trello!) that provides an intuitive way to source control your code. Here are 2 reasons why you should use Sourcetree: 1. Detailed breakdown of changes that were made in current and previous branches 2. Easy interpretation of merges and rebases from branching diagrams
After developing a new feature for my project, the final step before submitting a PR was writing some unit tests. I was able to learn and use a mocking library called Moq to mimic the behavior of components my new feature’s API depended on. Moq was designed to leverage .NET’s LINQ-style expressions, which made it super intuitive to learn and apply to my tests.
Unit testing is one of those things that not all developers love. I was able to experience firsthand why unit testing is an absolute necessity when building large-scale software systems. Ever change one variable and realize that you have broken a bunch of things, but don’t know how. Unit testing is a great way to know what function broke when you made the change and provides a safety net for all developers so that broken code is not put into the code base.
This week I presented the project I am working on to the clients. I used Visavail to display the availability of the client’s data sources and received lots of interest in the project! Visavail was easy to implement and has various chart options that allow you to customize everything.
Adobe Illustrator is a vector graphics editor and design program developed and marketed by Adobe Inc. A fun fact about Illustrator is how it was originally designed for the Apple Macintosh back in 1985 but now has shifted to be its own application as a subscription service for the public. It was difficult to learn at first, but I am glad to pick it up because I have now found an interest in graphic design. Without Arcurve, I would not be able to discover this interest and I am very grateful.
One of the things I never fully understood until my first week at Arcurve is how the agile software development lifecycle model works. With a traditional waterfall model, each phase of the development cycle including user story collection, coding, quality assurance, and user acceptance testing is done in sequence until the project is complete. Using an agile method, this entire waterfall process is compressed into many 1–2-week timeframes called sprints.
Azure DevOps is a fully integrated set of services, which provides my team the tools necessary to introduce and maintain backlogs, as well as hosting my developer’s source code repositories. With my experience, Azure DevOps has been such an amazing tool that helps me collaborate with the stakeholders of the Orion project. My team finished fixing 2 bugs so far and currently working on implementing multiple features to further better the Orion project to meet our client’s needs.
Last week, had a great planning session using Miro. Emmili and I built out a Value Proposition Canvas which led to User Story Mapping and Sprint Planning. Miro was super helpful allowing us to complete all the planning in one space!
I was given the opportunity to work on my own project with another fellow intern, from beginning steps to completion. Navigating my way through the project management & business analyst process has been a delightful challenge. We have been meeting with team members to understand what goes into delivering a well-done completed project. Starting off with creating a lean canvas and user stories, I am gaining an appreciation for the Arcurve method.
Learning about databases in school included a lot of reading and I had never really been able to apply my knowledge in a practical setting. This changed my first week at Arcurve, when I was introduced to using the Entity Framework 6 with Microsoft SQL Server. I have learned to use LINQ (Language Integrated Query) to query my SQL database and access data. LINQ is easy to learn and is implemented directly in C#. I recommend LINQ for anyone who needs to work with a database in a .NET framework.
Having just come out of school, my experience with git and version control is minimal to say the least. One thing I found to be a bit intimidating was using the command line, as we all know the power the command line holds. So, I have turned to using git clients such as Fork. Fork is a git client that presents a slightly less scary alternative to the command line.
The intern orientation experience at Arcurve is like no other! In the first three days of our orientation, we had the opportunity to meet the founders of the company, learn from past and present students, and even do our own elevator pitch. These sessions were a great way to break the ice and begin our journey with Arcurve! We are also starting to work on our CSR project which will help us bond as interns and give back to the community. We have a great idea that we are excited to share!
This tutorial walks you through the set-up of a local development environment, provides an introduction to Angular, and helps you to create a program using the Angular CLI tool. Interestingly, this 'Tour of Heroes' app is also referenced throughout Angular’s documentations. From my experience, this application was fun to build and I would highly recommend it to anyone using Angular for the first time.
1. Take Micro-Breaks Take 5 - 10 minute breaks each hour, by getting up and getting the blood flowing to your legs. 2. Make Meetings Interactive & Fun Encourage your team to turn on their cameras and use virtual backgrounds to make a space more professional or to make meetings more exciting! 3. Work Life Balance Setting aside a space in your house that is for work, if you don’t have a separate space you can go to, try dressing for work at home in a similar way that you would dress at the office.
This summers internship has been such a fantastic experience. Throughout this summer, I've had the opportunity to work alongside Konstantin and the Houston team. I've also been able to develop is a web application that pulls, analyzes, and interprets raw COVID data from several websites. This project was done in Python, using Plotly for the visualizations, Dash and Flask to build this web application, and Heroku was used to host this web application.
This summer, Arcurve's interns have been working together to organize a company-wide community project. We collaborated to design a company-wide photo bingo challenge, which encourages all Arcurvians to complete fun challenges while supporting their local communities through COVID-19. These challenges range from summiting a mountain to donating blood. We had an amazing time working together and are looking forward to seeing Arcurvians compete for prizes throughout the next month! - Joel & Ruha
Last weekend a few of us interns (both old and current) set off for the mountains! We hit Porcupine Ridge and captured this sweet pic at the top. I've learned to trust the All Trails rating which we though wouldn't apply to us young guys. Turns out we were not prepared emotionally or physically for this hike which All Trails calls 'Hard'. All in all an awesome day though!
While travelling down to LA for a concert, I couldn't resist busting out the bike (and of course the Arcurve jersey) to check out the mountains just West of Vegas. Locals thought I was nuts for only wearing shorts in 20 degree Celsius weather. The trip was phenomenal, and I'm super grateful that Arcurve allowed me to take the time to fulfill this lifelong bucket list item! Can't wait for my next adventure already
While attempting to reduce the number of dependencies my project relied on, I came across some useful Node packages that helped trim the fat from the node_modules: - depcheck: Outputs all the usages of ecach package listed in package json. This is useful for determining if any packages are unused - npm prune: Once you've found packages that are unused, this Node command will remove any packages removed from the package.json - npm ddp: Flatten dependency tree and removes redundant packages
This was my first experience writing any UI test/automation, so this framework was a great opportunity to learn! This web framework allows you to write cross-browser tests to check end-to-end behavior of your web app. Essentially, this adds another layer of regression and smoke testing, because the last thing we want is to not catch broken functionality whenever we make new changes.
So you have been working for a while, made a few commits and realized you have been on the wrong branch this entire time. If this sounds familiar then maybe git cherry-pick is for you! Git cherry-pick allows you to pick specific commits from one branch and apply them to another branch. So next time you mess up your repo don't panic, cherry-pick!
Rather than keep score on a whiteboard for our weekly beer o'clock game of cricket, I developed a web application using React and Firebase to bring us into the 21st century! Modern problems require modern solutions, right?! The current version is very basic, but it certainly an improvement over the whiteboard! The goal is to have a leaderboard, maybe even a tournament feature, so stay tuned! Also, this project is open to contributions! Check it out here:
Coming from a University where the curriculum is centered around formal software practices rather than modern tech stacks, we were never taught any web development frameworks. So, I was a little nervous beginning a project that relied entirely on ReactXP. Want to know what I think of it? Check out my blog post:
Finally got around to working with docker containerization, the days of “But it works on my machine” are finally coming to an end! I may or may not be - but definitely am - guilty of speaking that phrase a few times, so working with Docker really gives me some additional peace of mind.
Recently, I just worked with AvaloniaUI, a XAML Framework currently in its BETA stage. There’s nothing wrong with dabbling with bleeding edge technologies every now and then, especially when the ability to write cross-platform applications using .NET Core makes it well worth it!
Alongside our project work, Tyler, Nick and I have been working towards getting our Azure Fundamentals Certification. Good luck to Tyler who is the first to write the exam this Thursday and thank you to Arcurve for supporting our learning!