See what our interns are up to.
Taking my first steps in a corporate environment, I was immediately submerged into the amazing culture Arcurve nurtures. It was incredibly refreshing to witness how familial and authentic every Arcurvian is and how fast one can create a bond with one another. My first week was filled with joy and sorrows as I had to mark the end of many internships when mine had just begun. As they say, all good things must come to an end and what better way to pass the baton than with a great game of bowling!
During this internship, I was working on a few projects that used a C# ASP.net back-end, that was not developed by me. Working on these projects would have been a *nightmare* if I didn’t have my team member who was able to explain how everything worked, and why it was built this way. It made connecting the back-end to the front-end way easier than I thought it would be. So, if you ever get a chance to get a team to work on a project, I recommend it!
Last week, John, Tyler, and I (returning interns) went on an Arcurve trip to Halifax to run a workshop for a Digital Discovery Camp for ages 12-14 hosted by Digital Nova Scotia. Before the trip, we spent weeks in ideation and preparation of our battery-powered car workshop. It paid off as the camp was a success; the kids were amazing and each of the teams was able to build a working car, which we raced and gave out prizes for! We had a great time helping them out and seeing how well they did.
Throughout this summer I have been able to learn and use Flutter, which is a portable UI kit for crafting cross-platform applications. Flutter makes it super easy to integrate Dart code with dialogs, lists, grids, scrollable components and many other widgets!
At Arcurve there is no lack of mentorship for the interns. Each intern was set up with an “intern buddy” that you can reach out to at any time! It was nice having someone that is not working on the same project to talk about work, life, and career growth. The interns can also ask our Director of Talent Growth & Development any questions about the internship program and different opportunities that we could pursue during our internship.
For the past two months, I’ve been working on upgrading the current MudBlazor and Radzen elements of our Blazor web application to Telerik ones to unify the look of the project. It’s been challenging learning to work with various component libraries, but definitely rewarding when everything finally works! Our team is hoping to finish an upgrade of the entire site by the end of the summer.
I am having a blast working in Power BI to design colorful and versatile dashboards with Haris. This is a new program to both Haris and I. It has proposed some difficult challenges that we had to learn how to overcome- hence it took us 63 versions to come up with a final design!
For our CSR project, the “Let’s Par-Tee” team held an Arcurve friends and family event at Monster Mini Golf! After months of planning, I am proud to say that over 130 people attended our event which helped us raise over $2500 going directly to EducationMatters’ Barrier Removal Fund! Shoutout to everyone who came out and helped support our cause!
Last weekend, I participated in the YYCHacks hackathon at Platform Calgary. I had experience being in hackathons before, but this was my first time attending an in person event. Fellow Arcurve interns Ana and Allan were on my team We learnt a lot from this experience and also had lots of fun! Congrats to Mitchell and Nurgul who also attended and won third place at the event!
In my last post on the student feed, I mentioned that I was pursuing a cloud certification. Specifically, a certification in Microsoft Azure Fundamentals. I am pleased to report that I passed my certification exam! I am grateful to Arcurve for supporting me throughout the entire process and fostering an environment where we are encouraged to pursue new learning paths outside of working on our current projects.
In preparation for our CSR booth at the Arcurve BBQ, our "Let’s ParTee" came together to build and paint a 3D version of the Arcurve logo to be an obstacle in the booth’s mini golf putting game! It was a great experience to construct the obstacle and see it highlight our booth at the BBQ. I had an absolute blast at the BBQ, and it was so great to bond with the Arcurve community!
For the past few weeks I have been learning how to interview people and this has been an interesting process. Interviewing can you be really fun because you get to talk to somebody about their story, who they are, and what brought them to want to work at a place like Arcurve. Although it can be tough to get an insight into who somebody is through a short conversation, learning what to ask and what to look for certainly helps!
Last Sunday, I had a blast at the Annual Family and Friends BBQ, where everyone got to enjoy great food, cold drinks and wonderful company! The Arcurve Interns also got a chance to have a Community Social Responsibility Project (CSR) booth, where people could learn about this year’s CSR Projects and how we help to give back to community!
The interns have been spending some lunches in the social room honing our ping pong and pool skills, with some occasional beer sampling mixed in. I've also been using the time to practice my photography in between games and collecting photos for Arcurve's social media. It makes for a fun lunch at the office!
Being an Arcurvian not only involves delivering high-quality solutions for clients but also giving back to the community. Together with other interns, I volunteered at Inn from the Cold, where we were able to help provide dinner service to 15 families!
Over the past month and a half, I have been using MudBlazor to help with front-end development on my project. MudBlazor provides plenty of different components such as dialogs, grids, menus, and tables that easily integrate with the Blazor framework and C# code. The components are clean, customizable, and have really helped me with new feature development!
I’ve been working on a data-oriented project which mainly uses Python and the pandas library. One of the tasks I was given was to convert times in the data back and forth between DST and UTC. Sounds simple enough, right? As with many programming tasks, there were difficulties with input/output formatting, broken tests, and more. After nearly a month of tribulations, I think it’s safe to say that most software developers would vote for eliminating the time change!
As Business Analysts, we deal with a lot of context-switching. We move between tasks, attend half a dozen meetings, and support our teammates multiples times a day. What has helped me manage this is using Notion to write a log of everything I do on an hour-by-hour basis. In addition, I write down notes on where I left off before switching tasks.
I was able to get brunch with my mentor Love! Being the two Arcurvians from Toronto, it was nice to finally meet in person, chat, and enjoy some Starving Artist waffles. Looking forward to trying more food together in the future!
Over the past couple months, I have been learning to use Azure Synapse to pull and transform data from multiple sources to create a Data Mart! Arcurve was also kind enough to encourage me to get my Azure Fundamentals Certification before starting the project!
Recently, I began training for the Microsoft Azure Fundamentals Certification (AZ-900). The course covers a variety of cloud concepts (which is extremely useful for people like me with no prior experience). I appreciate how the course explains the rationale behind why a business would choose to migrate over to the cloud and the various options provided to make such a migration a possibility.
This month I began studying for my Certified Associate in Project Management exam from the Project Management Institute. So far, I have learned a breadth of project, program, and portfolio concepts and I am looking forward to learning more about key knowledge areas including stakeholder analyses, procurement, and resource management. I am excited to see how this certification will enhance the duration of my internship at Arcurve and my future career!
A couple of weeks ago, the interns presented our CSR (Corporate Social Responsibility) projects at the monthly Lunch and Learn event. It was great to have the three CSR groups work together and create a presentation for all the Arcurvians to hear about our event and the products that will be available soon! At Arcurve’s Lunch and Learn events, we donate $10 to Brown Bagging for Calgary Kids for every Arcurvian that attends!
Here is a sneak peak of the Arcurvia website mockup being made in a program new to me- Figma, where I am showcasing an Arcurvian’s drawing that was made to represent an Intern’s depiction of the future Arcurve BBQ experience. This drawing was crafted in only 20 minutes in a program called JSPaint, which is just one of the fun social community events happening at Arcurve every week!
Arcurve is getting ready to attend another virtual career fair! I have been working on some of the booth organization for these events and it has been really cool to learn about how a company gets organized and set up. Attending job fairs as a representative has allowed me to meet all sorts of people and talk about how much I love working at Arcurve! If you ever see us at an event, be sure to check us out!
This week I have been logging into work from Oxford! It has been very cool working from some of the oldest libraries (sneaking in with my sister’s access card), while also enjoying the festivities for the Queen’s Platinum Jubilee! My team has been super flexible and accessible with my work hours, so it has been a great experience working abroad!
A physical computer can make virtual machines (VMs), which are environments that function as their own computers (a portion of the computer’s resources are used to create a new computer that exists virtually!). They allow your entire team to have the exact same development environment. My team uses Azure VMs, which are nice because they exist on the cloud and use Microsoft’s resources (so your personal computer isn’t slowed down!).
This month, Nurgul and I played our first game of softball with the Arcurve Softball Team! It is so fun to see and meet employees in a different setting. I look forward to every Tuesday as it has now become the designated Softball Day of my week. Be sure to cheer us on and join in on the fun!
We spent a great lunch with the social committee coming up with our dream versions of the Arcurve BBQ. It was uncanny how many people had Jay's 'Arcurve Elixer' as the centerpiece of their artwork. It was a ton of fun seeing everyone's gorgeous Microsoft Paint masterpieces and having sandwiches from Holy Grill!
As a relatively new developer, I was naïve in thinking Git was the only version control system (VCS) out there. My last project introduced me to Perforce’s Helix Core, a popular VCS from the past which is still widely used in game development. Some of the differences between Git and Helix Core include handling of large files, a distributed versus centralized model, and branching.
One tool I was using quite frequently to debug some API issues is JSONLint. JSONLint makes it easy to spot invalid JSON by highlighting errors in the file and providing helpful information below about what those errors mean and common fixes. If you are having any issues with JSON, JSONLint is a powerful, yet simple tool for debugging!
Flexbox (flexible box) provides a more efficient way to layout, align, and distribute space among items in a container even when those items have an unknown or dynamic size. A flex-container expands items to fill available free space or shrinks to prevent overflows. This becomes an amazing tool when building for different screen sizes
I recently started on a React project and I was pleasantly surprised by how helpful and intuitive it is to use the React Developer Tools for Chrome. The React Dev Tools make it easy to see your component tree as well as see their state and prop values for easy debugging. They are much cleaner than the default Chrome dev tools and I would highly recommend them for anyone working with React!
Here are some things I learned about making software development estimates on my latest project: Look for changes to the database models as these tend to require more work. If the requirements are unclear, ask questions – you can’t estimate if you don’t know what you’re estimating! Don’t forget to include time for testing! It always helps to have another developer review your estimates 😊
Kicking back with some Codenames and getting know some more Arcurvians on a Friday afternoon? Count me in! I had a great time helping to organize this fun, low-key, team building event, looking forward to the next one!
One of the reasons Angular became such a popular framework is because you can create components that can be reused throughout the app. Components are the main building block for all Angular Applications and are an amazing organizational benefit to front end codebases.
What better way to volunteer at the Calgary Food Bank (CFB) for YYC Tech Gives than wearing a justice league Christmas sweater, 2 pairs of socks, a Santa hat, reindeer antlers with ornaments, pit vipers, and shorts in -16°C weather! This was my second shift at CFB, and we were able to process around 525 pounds of romaine lettuce!
Through my recent task, I’ve been getting acquainted with Specflow! SpecFlow is a testing framework that supports Behavior Driven Development (BDD). SpecFlow allows us to define application behavior in plain English using simple grammar defined by a language called Gherkin.
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.
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!
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!