Skip to content
View YawarRaza7349's full-sized avatar

Highlights

  • Pro

Organizations

@rit-csc
Block or Report

Block or report YawarRaza7349

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
YawarRaza7349/README.md

Yawar Raza

Seeking an entry-level software engineering job. ——— Functional Programming | Object-Oriented Design | SQL Databases | Interactive Visualizations and Games | Programming Language Theory | Type Systems | Technical Writing

United States

About

I am seeking an entry-level software developer position, preferably non-remote, almost anywhere in the United States. I have B.S. and M.S. degrees in Computer Science from Rochester Institute of Technology, as well as a year of internship experience doing software development.

I have learned about and used many technologies in a variety of contexts, and can thus adapt to different tech stacks and platforms. That said, I am most comfortable doing backend application development, spanning both the business domain layer and the database layer. I prefer to develop in Java, C#, or similar (i.e. statically-typed and garbage-collected) languages. My database experience is in SQL, and I have used several implementations throughout my work. Additionally, I'd be interested in creating self-contained software tools for internal use by both developers and non-developers. I also enjoy working with existing codebases to fix bugs from the bug database, as well as refactor code.

I am familiar with various styles of computer programming, as well as the trade-offs they have in comparison to each other. I took a course on functional programming early in my degree, and kept learning more about Haskell and static types for a few years after, before switching my focus to programming language theory and reading research papers on type systems and related topics. Meanwhile, I also obtained experience creating visually-rich, interactive visualizations and games through my double-major in Game Design and Development, using APIs at varying levels of abstraction, such as shape-drawing libraries and scene graph frameworks. Furthermore, I took two Software Engineering electives, one about object-oriented design patterns and one about the Alloy and SPIN formal methods tools, a background I look forward to extending to enterprise architectures, concurrent and distributed applications, and other forms of software.

I also like explaining computer programming concepts to others, both through one-on-one conversations and through written explanations. This ranges from teaching well-known content to presenting ideas that I think of myself. I love synthesizing new connections based on my existing knowledge, letting me create educational analogies, as well as come up with mind-opening ways to formulate certain notions in programming. Given all this, I am also open to positions such as technical writer or instructor, as well as positions involving studying and documenting computing systems, such as large codebases. Samples of my technical writing can be found in the "Projects" section below.

Experience

SRC Solutions Inc

Software Engineering Co-Op

SRC Solutions Inc

Jan 2017 - Jun 2017 6 months

Center Valley, Pennsylvania, United States

(Worked remotely in Rochester, NY)

  • Created an internal tool to save and migrate data between separate databases, as a solo intern project.
  • Involved creating an XML-based configuration language to specify relationships among database columns.

McGraw‐Hill Financial — S&P Capital IQ

Software Engineering Intern

McGraw‐Hill Financial — S&P Capital IQ

Jun 2014 - Aug 2014 3 months

New York, New York, United States

  • Created an internal tool to aggregate and display application usage data, with one other intern.
  • Wrote code to access and aggregate the relevant data using Ermine, a Haskell‐like in‐house language.

B-Line Medical

Software Development Intern

B-Line Medical

Sep 2013 - Jan 2014 5 months

Washington, District of Columbia, United States

  • Contributed to SimCapture, which records medical simulations and manages course data.
  • Helped implement XLSX batch user upload, database deletion support tool, and student iCalendar export.
  • Technologies used include: SQL, ASP.NET, Adobe Flex, ActionScript 3.0, and LINQ.

Kids on Campus

Workshop Assistant – Creative Coding with Java

Kids on Campus

Jul 2013 - Aug 2013 2 months

Rochester, New York, United States

  • Helped 25 students over two sessions learn how to program simple textual and visual games.
  • Assisted in teaching and giving one‐on‐one help on Java and Processing to middle schoolers.

Education

Rochester Institute of Technology

Bachelor of Science/Master of Science dual degree Computer Science (BS/MS), Game Design and Development (BS only) 3.8/4.0

2011 - 2018

Activities and Societies: RIT Honors Program; Computer Science Community; Tora-Con

Minor in Mathematics

Courses

  • Biologically-Inspired Intelligent Systems [CSCI 633]
  • Combinatorics [MATH 646]
  • Compiler Construction [CSCI 742]
  • Computer Animation: Algorithms and Techniques [CSCI 712]
  • Concepts of Environment Science [ENVS 101]
  • Data Structures and Algorithms for Games and Simulations II [IGME 309]
  • Educational Games [Special Topics]
  • Engineering of Software Subsystems [4010-362]
  • Explorations in Cell and Molecular Biology and Evolution [BIOG 101]
  • Foundations of Computer Graphics [CSCI 610]
  • Interaction, Immersion, and the Media Interface [IGME 236]
  • Language and Linguistics [ANTH 104]
  • Mathematical Models of Software [SWEN 220]
  • Professional Communications [CSCI 471]
  • Programming Language Concepts [CSCI 344]
  • Programming Language Theory [CSCI 740]
  • Programming Skills: Aspect-Oriented Programming [CSCI 641]
  • Programming Skills: Functional Programming with Haskell [4003-561]
  • Programming for Digital Media [4080-434]
  • Software Foundations/Mechanized Metatheory for Programming Languages [Special Topics]

Projects

Proofs About Particular Programs (Work in Progress)

Dec 2023 - Mar 2024

(Coq; solo)

  • Experimented with writing proofs in Coq about how specific programs in a small functional programming language behave.
  • Tried two different implementations, one closer to an interpreter and one closer to an operational semantics.
  • Represented continuations in a way that acts like a zipper, but looks like a call stack to give it a clearer structure.

Technical Writing Samples

Mar 2019 - Feb 2024

(solo)

Designing Computer Languages

Aug 2018 - Jul 2023

(solo)

  • Worked out the details of a markup language serving as an alternative to XML, taking influence from languages like JSON and AsciiDoc.
  • Invented an educational programming language for learning how memory works in C++ while being more familiar to Java/C# coders.
  • Contemplated and experimented with several other general language designs and features, particularly object-oriented ones.
  • Experimented using example code to test language constructs for simplicity and expressiveness in both syntax and semantics.

A Mechanized Proof in Coq of the Type Soundness of Core L³

Jan 2018 - May 2018

(Coq; solo)

  • Worked on translating the type soundness proof from a research paper into Coq so it can be machine-checked.
  • Experimented with different encodings (lists, functions, etc.) to see which one was easiest to use in the proofs.

Project Report: https://cs.rit.edu/~mtf/student-resources/20175_raza_mscourse.pdf

Inverse Kinematics of a Stick Figure’s Limbs

Oct 2017 - Dec 2017

(JavaScript/three.js; solo)

  • An inverse kinematics program animating limbs’ internal joints to resemble the given motion-capture data.
  • Iteratively improved animation via trial-and-error, switching from FABRIK to CCD and adding constraints.

Videos of the program in action!: https://www.youtube.com/playlist?list=PLY2FhVIfIl7UgElsgOhD8sE-R5X3yhsng

Visual Studio Code Jump-to-Definition extension for MLton

Sep 2016 - Dec 2016

(TypeScript; solo)

  • Used the Visual Studio Code Extension API and the Language Server Protocol to add one IDE feature for SML code.
  • Read from the "Def-Use" file generated by the MLton compiler to connect uses of identifiers with their definitions.

Elm Fireworks

Jul 2015 - Aug 2015

(Elm; solo)

  • A procedurally-animated display of multicolored fireworks made up of operators found in Elm code.
  • Created a monadic interface for Elm's random generation and used Elm's Model-Update-View pattern.

Assortment of small applications, mostly in JavaScript or Processing

Mar 2014 - May 2015

(various languages; mostly solo)

  • Small visualizations and games I created, some for class, some for fun, all available on GitHub. Click the link below for more info.
  • Technologies used include Unity2D, Processing, Processing.js, CoffeeScript, underscore.js, HTML, the DOM API, d3.js, AJAX, Web Workers, and Haskell.

You can even try a few of them yourself!: https://yawarraza7349.github.io/

PokéNet

Feb 2015 - May 2015

(C#/WPF/PostgreSQL; team of 3)

  • A fan-made, persistent application for managing Pokémon and coordinating Pokémon trades with others.
  • Designed the database using ER diagrams, created scripts to populate the database, and wrote GUI code.

Frame-by-Frame Animation Application

Jan 2014 - Apr 2015

(Processing; solo)

  • A drawing application I created to use for my 2D Animation course instead of Photoshop.
  • Features onion-skinning to facilitate creating frame-by-frame animations, and also includes a color palette and a fill tool.

Math Fusion

Sep 2014 - Dec 2014

(C#/Unity; team of 4)

  • A number manipulation game with a food theme where the player plays as a chef.
  • Created the game state system using design patterns and evaluated UI/UX approaches for simplicity.

Tilecar Runner

Apr 2013 - May 2013

(C#/XNA; team of 5)

  • A race against the clock game with various power-ups and effects.
  • Implemented numerous power-up effects and explored using a custom rectangle type with XNA's API.

HTML Editor

Mar 2013 - Apr 2013

(Java/Swing; team of 4)

  • A tabbed HTML editor with file and edit options and a dynamic, collapsible tree view of HTML elements.
  • Coded parsing of HTML, tag insertion, and part of the HTML tree, and learned about UML diagrams.

Viking Charge

Mar 2013 - Apr 2013

(C#/XNA; team of 5)

  • A bullet hell game where the player charges at cannons to destroy them.
  • Contributed in group programming sessions and practiced using vector math in basic game physics.

Pizza Delivery System

Sep 2012 - Nov 2012

(Java/Swing; team of 6)

  • An application that simulates taking, cooking, and delivering food orders, and changing manager settings.
  • Developed much of the CLI and GUI for the cashier, and learned about the software engineering process.

Puzzle League Revival

Mar 2012 - May 2012

(C#/XNA; team of 5)

  • A block-swapping game, as well as a GUI to create custom puzzles.
  • Helped code gameplay mechanics and learned how to integrate multiple features in an application.

Honors & Awards

Top 5% of contestants in HackerRank's Hack the Interview III online coding contest

HackerRank

Apr 2020

https://www.hackerrank.com/results/hacktheinterview3/ysr7349

First-place winner of the 2018 RIT Math Competition

RIT School of Mathematical Sciences

Apr 2018

2016 Outstanding Fifth Year Student Award

RIT Department of Computer Science

Apr 2016

$1000 Scholarship

Second-place on the 2014 RIT Integral Contest (Individual portion)

RIT School of Mathematical Sciences

Mar 2014

Languages

English

Native or bilingual proficiency

Pinned

  1. PopularLanguagesOfGitHubVsStackOverflow PopularLanguagesOfGitHubVsStackOverflow Public

    A plot of how often languages are used on GitHub versus how often they are asked about on StackOverflow.

    HTML 1

  2. RMWAD1-Project1 RMWAD1-Project1 Public

    JavaScript 1

  3. YuGiOhCardStatCorrelations YuGiOhCardStatCorrelations Public

    See a visual representation of Yu-Gi-Oh! card stats (ATK, DEF, and Level/Rank). Allow for filtering based on Attribute, Type, and Category.

    HTML 1 1

  4. Function Subtyping Doesn't Necessari... Function Subtyping Doesn't Necessarily Sabotage Parametricity
    1
    Three years ago, @hwayne posted [A Totally Polished and not-at-all half-baked Take on Static vs Dynamic Typing](https://buttondown.email/hillelwayne/archive/a-totally-polished-and-not-at-all-half-baked-take/) to his email newsletter. When I first read it, I found it refreshing to read a more balanced programming-related post than I typically encounter, and I also learned some new ideas I'd never heard about before. However, this Gist is not really about all that; it's about one specific statement in the post that is incorrect. The error doesn't affect any of the arguments being made, nor am I criticizing Wayne for the error. Rather, correcting the statement allows me to explain some pretty interesting concepts that might be insightful to some people who read this.
    2
    
                  
    3
    ---
    4
    
                  
    5
    Here is the statement I'll be talking about, along with the context of the statement:
  5. CyclicCicadas CyclicCicadas Public

    Shows extrapolated cicada populations in U.S. states.

    Processing

  6. FrameByFrameAnimationApplication FrameByFrameAnimationApplication Public

    AKA How I avoided using Photoshop for the first part of my 2D Animation class

    Processing