← Back to latest articles

Monday - March 14th, 2022 - 17:03:33 (E.S.T.) - 9th Blog Entry

Resumes, Interviews, and CSV/XLSX-to-YAML Lessons

Wow time flies. It's been a few weeks since I have been able to make an update here. First, I'll just say where I've been spending most of my time. Mostly I've been working in Python experimenting with different libraries and analyzing data. I have also been applying extensively to software developer positions. I took some time, actually I paid for a resume creation service called BeamJobs and they are 100% worth it. I've already had a few interviews in the last 2 weeks from this resume alone. Granted, I had to revamp my entire resume and remove the last 8 years of jobs since they didn't have anything to do with software development. So I had to get creative. Anyway, the service is super easy to use and creates a professional looking resume in minutes. If you want to see what it looks like, you can check mine out here. I can't promise this will be updated in the future as I'll probably forget this hyper link exists as time goes on.

So two of the companies I interviewed for gave me take home assignments. One assignment is a very complicated assignment which doesn't have a deadline. It's for a pretty high profile firm who works for the government and handles ciphers, encryption and steganography. I had put it on the back burner temporarily waiting to get some free time. However, a second company I spoke with gave me a simpler task which took roughly ~9 hours over 8 days. I chipped away at it little by little. The goal of the task was to take some given datasets, whether they be in CSV or XLSX format, and convert them to YAML format. I've done this sort of stuff before. In fact, it was taking CSV files and converting them into XML documents. You can see my source code here on how I did that. Actually, this particular task had a really cool feature in it - I had to embed a base64 encoded file into the actual XML document itself. Anyway, back to the other task regarding converting CSV/XLSX to YAML.

I ended up going way over scope on this task. Mainly because I like to seek out as many edge cases as possible and then learn how to make sure they are covered. A few different cases I came up with was ensuring the passed in 2 arguments from the command line. If it was less than 2, then program execution would halt. If a user did pass 2 arguments, then I would check both paths to ensure they existed in the system. If they didn't, execution would halt. I used the csv reader library that's native to Python to parse the CSV files. It's a little more difficult than using pandas which is why I chose to do it. I was trying to keep the script light weight. However, to parse the XLSX input required an additional library that's not native to Python, called openpyxl. I've used this before so I had some familiarity with it. Again, I could have used pandas and probably simplified the entire process but I like to make my own life difficult for learning sake.

I have taken a breather from doing any more web development, just mainly because my free time is limited. I think though, between doing this cipher/steganography assignment and potentially making this site a little prettier, I should be able to commit some more time relatively soon. I did get the mariaDB database finally working. That was fun trying to diagnose why I couldn't connect to my mariaDB server via PHP. Come to find out, I needed to actually renamed this website's extension to .php from .html. I guess there's a way to get the .html to have PHP code executed inside it but it wasn't worth trying to figure that out since literally changing the extension allowed the connection to my server to work.