<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0"><channel><title>Pulumi Blog: Hitesh Boinpally</title><link>https://www.pulumi.com/blog/author/hitesh-boinpally/</link><description>Pulumi blog posts: Hitesh Boinpally.</description><language>en-us</language><pubDate>Fri, 11 Jun 2021 09:53:45 -0700</pubDate><item><title>Hitesh's Intern Experience at Pulumi</title><link>https://www.pulumi.com/blog/hiteshs-experience-as-a-pulumi-intern/</link><pubDate>Fri, 11 Jun 2021 09:53:45 -0700</pubDate><guid>https://www.pulumi.com/blog/hiteshs-experience-as-a-pulumi-intern/</guid><description>
&lt;img src="https://www.pulumi.com/images/generated/blog/hiteshs-experience-as-a-pulumi-intern/index.png" /&gt;
&lt;p&gt;Hi everyone, I’m &lt;a href="https://www.linkedin.com/in/hitesh-boinpally"&gt;Hitesh Boinpally&lt;/a&gt;, a junior studying Computer Science at the University of Washington. I was offered the opportunity to intern for Pulumi over the past three months, and here’s how it looked!&lt;/p&gt;
&lt;h2 id="technical-work"&gt;Technical Work&lt;/h2&gt;
&lt;p&gt;My overall project was to build a test harness for Pulumi&amp;rsquo;s converter tools such as &lt;a href="https://github.com/pulumi/arm2pulumi"&gt;&lt;code&gt;arm2pulumi&lt;/code&gt;&lt;/a&gt; and tf2pulumi. The project involved several pieces, all of which meant learning about technologies I hadn&amp;rsquo;t encountered before.&lt;/p&gt;
&lt;div class="note note-info"&gt;
&lt;div class="icon-and-line"&gt;
&lt;svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--fill" fill="currentColor" aria-hidden="true" focusable="false"&gt;&lt;use href="https://www.pulumi.com/icons/sprite.74fadd1b94bae866bccf29a780f184a71c5cfc34c8677be70da8fe2ab0309b9e.svg#p-info-fill"/&gt;&lt;/svg&gt;
&lt;div class="line"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="content"&gt;As of Pulumi CLI v3.71.0, &lt;code&gt;tf2pulumi&lt;/code&gt; has been replaced with &lt;code&gt;pulumi convert --from terraform&lt;/code&gt;. &lt;a href="https://www.pulumi.com/blog/converting-full-terraform-programs-to-pulumi/"&gt;Converting Full Terraform Programs to Pulumi blog&lt;/a&gt; has more details.&lt;/div&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;A program that ran the test itself and generated results in a program readable way, which I wrote in Go.&lt;/li&gt;
&lt;li&gt;Running that program to generate historical data over time through GitHub Actions consistently.&lt;/li&gt;
&lt;li&gt;The cloud infrastructure part, which was uploading the test results into an AWS Redshift table for human-accessible analysis. Here was where I got to utilize Pulumi and better understand infrastructure as code.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;All of these were fascinating to learn about and stretched my knowledge in directions I hadn’t previously explored.&lt;/p&gt;
&lt;p&gt;I began with setting up the harness for &lt;a href="https://github.com/pulumi/arm2pulumi"&gt;&lt;code&gt;arm2pulumi&lt;/code&gt;&lt;/a&gt;. The Go program had already been written, so I needed to focus on the GitHub Actions for CI and cloud infrastructure aspects. I set up the CI quickly, but the cloud infrastructure took some time. Wrangling with AWS’s different IAM roles, cross-account permissions, and how to utilize the different tools was complex and challenging. However, I learned a lot about these different spaces and gained valuable experience. Further, I appreciated the advantages of Pulumi, as I could quickly undo/redo changes incrementally, rather than making manual changes in the AWS Console.&lt;/p&gt;
&lt;p&gt;Once I built the arm2pulumi coverage tracker end-to-end, I shifted to tf2pulumi. Unlike &lt;code&gt;arm2pulumi&lt;/code&gt;, there was no code to inherit, and I had to write out the entire workflow from scratch. The Go program was the real challenge, as the CI work and cloud infrastructure I had written was reusable. I got a much better hang of Go as a language and the advantages that came with it. I also got to leverage Pulumi’s &lt;a href="https://www.pulumi.com/docs/using-pulumi/automation-api/"&gt;Automation API&lt;/a&gt; and the power of having multiple, configurable stacks through Pulumi to significantly simplify the process of deploying &lt;code&gt;tf2pulumi&lt;/code&gt;’s (and any other converter’s) coverage report cloud infrastructure. Overall, I explored various new technologies, many of which I’ve used in personal projects since, and plan to continue to do so.&lt;/p&gt;
&lt;h2 id="day-to-day-work"&gt;Day to Day Work&lt;/h2&gt;
&lt;p&gt;Due to the ongoing pandemic, my internship was done fully remote. Having come from 4 quarters of remote learning in college, I wasn’t particularly ecstatic about more remote work. Pulumi completely exceeded my expectations, though! It was hard to meet new people, and I missed out on the daily interactions you might expect in a traditional office environment. Regardless, efforts were made to overcome that, and they were pretty successful, with biweekly random 1:1s and fun team events to better integrate with the team. On the other hand, I work better at night and am a bit of a late sleeper, so I could adjust my schedule to my strengths more than I would if I were going into an office each day. Additionally, Pulumi has adapted nicely to the remote environment and made my experience much better than I thought possible.&lt;/p&gt;
&lt;p&gt;The team itself was great, with everyone being super friendly and supportive. It took me longer than I expected to get the confidence to ask questions in general Slack channels, but each time I did, I was met with a helpful response and got the assistance I needed to succeed. Despite being the only intern, I never felt cast aside and was guided throughout my project in a balanced way, still allowing for some independence. Everyone is also so knowledgeable that I would learn something new perusing Slack every day, whether internal to Pulumi or an article about some new way of doing things.&lt;/p&gt;
&lt;p&gt;Thanks to the high level of transparency at Pulumi, I also got to see many different levels of the company, rather than just the work that I was doing. As a result, I learned more about how a company works fundamentally, and a typical development process.&lt;/p&gt;
&lt;h2 id="closing-thoughts"&gt;Closing Thoughts&lt;/h2&gt;
&lt;p&gt;Pulumi was my first ever internship, and I couldn’t have asked for a better experience. I learned about a ton of new technologies, some of which I may not have explored yet but at least am aware of for future projects. In addition, I met some truly incredibly talented, hardworking, and interesting people. I’m stoked to continue using Pulumi and am excited to see how the company evolves and grows!&lt;/p&gt;
&lt;h2 id="thank-yous"&gt;Thank Yous&lt;/h2&gt;
&lt;p&gt;First off, a huge shout out to the leadership at Pulumi for offering this opportunity to begin with! Thanks to &lt;a href="https://github.com/leezen"&gt;Lee&lt;/a&gt;, especially for organizing the internship and your help throughout it!&lt;/p&gt;
&lt;p&gt;Thank you to &lt;a href="https://github.com/lblackstone"&gt;Levi&lt;/a&gt; for being an awesome, approachable mentor and always willing to help out! I asked a ton of &amp;ndash; oftentimes pretty random &amp;ndash; questions, and you helpfully answered each of them.&lt;/p&gt;
&lt;p&gt;Thank you to &lt;a href="https://github.com/viveklak"&gt;Vivek&lt;/a&gt; for guiding me through many technical details and approving my PRs. Your guidance was really useful, and I appreciate it a lot!&lt;/p&gt;
&lt;p&gt;Lastly, thanks to all those who helped me out along the way and the rest of the team for building such a friendly, helpful environment!&lt;/p&gt;</description><author>Hitesh Boinpally</author><category>pulumi-interns</category></item></channel></rss>