Ian De Silva

Ian De Silva Email and Phone Number

Principal Software Engineer at Target @ Target
Ian De Silva's Location
Minneapolis, Minnesota, United States, United States
Ian De Silva's Contact Details

Ian De Silva personal email

Ian De Silva phone numbers

About Ian De Silva

Software engineer is title I wear with honor. It captures my drive to produce software solutions that surpass my customer's needs and expectations, even if it requires challenging the status quo. For example, on one of my projects, consistent questioning of the "conventional wisdom" enabled me to save my organization 2 person-years of developer time each year.I consistently seek to improve product quality and team effectiveness. This has fueled my passion for process improvement, the form of which has varied widely. From adopting Scrum to introducing code analyses, I helped streamline my teams' processes and saved overall developer time. These experiences so impacted me that I teach process improvement techniques to master's students at the University of Minnesota.I am always looking out for new opportunities. Please contact me to learn more. I'd love to hear from you!

Ian De Silva's Current Company Details
Target

Target

View
Principal Software Engineer at Target
Ian De Silva Work Experience Details
  • Target
    Principal Software Engineer
    Target Oct 2019 - Present
    Minneapolis, Mn, Us
  • Best Buy, Consulting For Aim Consulting Group
    Senior Software Developer (Consultant)
    Best Buy, Consulting For Aim Consulting Group Oct 2018 - Oct 2019
    Enacted and enhanced the vision for Best Buy's e-commerce platform (backend; server-side rendering and multi-tier caching), where I:• Championed and built a page experience selector (logic engine) giving page-owners control over the customer experience, reducing time to market for new features, and lowering support costs.• Supported multi-team initiatives as a subject matter expert, focused particularly around site performance and data accuracy.• Created detailed design for a smart, multi-tiered cache eviction strategy to reduce configuration complexity and ensure data freshness.
  • University Of Minnesota
    Graduate Teaching Assistant
    University Of Minnesota Aug 2012 - May 2018
    Minneapolis And St. Paul, Minnesota, Us
    Quality Assurance and Process Improvement (SEng 5852) -- Spring 2013 - 2015, 2018* Coached students in Agile and Lean practices; helped students apply these practices in their current jobs.* Tutored students in technical writing to improve their communication and reasoning skills.Software Testing and Verification (SEng 5811) -- Spring 2013 - 2018* Guided students in applying quality practices---e.g., software inspections andtest-driven development (TDD)---to their company's projects and measuring practice effectiveness.* Developed assignments providing experience developing tests. From these tests, students critically analyzed different structural coverage criteria in terms of fault-finding effectiveness and contrasted it with both requirements coverage and different test input selection criteria.Software Engineering I: Overview, Requirements, and Modeling (SEng 5801) -- Fall 2013, Fall 2016Software Engineering I (CSci 5801) -- Spring, Fall 2012* Introduced Agile processes and practices (e.g., Scrum and planning poker) to classes of 30-60+ students, showing them how to select and apply the techniques best suited to their project goals.* Redesigned the course assignments to provide practical experience in producing a product using test automation to replicate realistic developer-tester interactions.* Taught design patterns to a class of 80+ students and inspections to a class of 30+.* Tutored students in the use of NuSMV to model and verify requirements.
  • University Of Minnesota
    Adjunct Instructor
    University Of Minnesota Jan 2016 - May 2017
    Minneapolis And St. Paul, Minnesota, Us
    Quality Assurance and Process Improvement (SEng 5852) -- Spring 2016, Spring 2017* Taught objectives-based process evaluation, metrics-driven process improvement, and Agile/Lean techniques to professional masters students seeking to become leaders in the field.* Coached students in Agile and Lean practices; helped students apply these practices in their current jobs.* Wrote assignments to get students to critically analyze processes, including those they use at work, and develop improvement plans.* Tutored students in technical writing to improve their communication and reasoning skills.
  • Fpx, Consulting For Aim Consulting Group
    Java Engineer (Consultant)
    Fpx, Consulting For Aim Consulting Group May 2016 - Aug 2016
    Bellevue, Washington, Us
    * Developed RESTful services (Spring) to migrate customer data to new Configure, Price, Quote (CPQ) software.* Improved product quality by reviewing, testing, and refactoring other parts of the code base. Identifying potential sources for data inconsistencies, I paired with other developers to improve input validation and data integrity.
  • Adventium Labs
    Research Intern (Software Developer)
    Adventium Labs Jun 2014 - May 2016
    Minneapolis, Minnesota, Us
    * Created tool (Python3) to construct new programs from code clones to detect server attacks.* Developed iNeuron, an iOS app (Swift) that teaches high school students neuroscience by experimenting with neural circuit construction.* Designed and crafted means to discretely map a network using a widely-deployed embedded controller, providing compelling support for our proposed security improvements.* Explored means of securing and re-purposing an embedded controller to monitor the integrity of a server.
  • Ibm
    Intern Software Engineer
    Ibm Jun 2013 - Aug 2013
    Armonk, New York, Ny, Us
    * Developed RESTful services (JAX-RS) for data extract-transform-load product (InfoSphere DataStage).* Established team quality practices---including automated testing (JUnit) and regular code reviews---and integrated additional quality checks/metrics into the build (SonarQube, Checkstyle, JaCoCo).* Trained globally-distributed team in Agile practices and test input generation strategies.
  • Ibm
    Supplemental Staff Software Engineer
    Ibm Jun 2012 - Aug 2012
    Armonk, New York, Ny, Us
    * Devised new CPU utilization metrics that account for simultaneous multi-thread (SMT) loads to simplify customer system capacity planning on IBM i. Using knowledge of POWER8's processor pipeline, I devised test programs (C++) that would replicate different pipeline loads, then executed, collected, and plotted the utilization of each (Python2, matplotlib, numpy) against the known pipeline load (the oracle).* Evaluated the potential market for FPGA accelerator support on IBM i, leading to product offering changes.
  • University Of Minnesota
    Research Assistant
    University Of Minnesota Aug 2010 - Jan 2012
    Minneapolis And St. Paul, Minnesota, Us
    Existing test coverage tools instrument the application in order to assess coverage, potentially introducing faults. This poses a risk for safety-critical systems. Using a novel, multi-core processor architecture (Ex-Mon simulated in SIMICS), we showed how to non-intrusively measure the test coverage of an uninstrumented application; allowing us to test the actual application to be deployed. We initially demonstrated the architecture's ability to non-intrusively measure Modified Condition/Decision Coverage (MC/DC) and later expanded it to include other forms of coverage like statement coverage.
  • Ibm
    Supplemental Staff Software Development Engineer
    Ibm Jun 2011 - Aug 2011
    Armonk, New York, Ny, Us
    * Produced IBM i storage debug and diagnostics tool (C++) to improve customer-site support.* Created prompt program (ILE C++) to enhance the high availability product’s command-line user experience.* Developed command-line tool for cluster resource manipulation and management.
  • Ibm
    Staff Software Engineer
    Ibm May 2010 - Aug 2010
    Armonk, New York, Ny, Us
    * Led team and developed Java tool to package and release the IBM i OS and product images (the golden masters) to distribution centers; reducing release times by 1-2 months per product set and saving 2 person-years of effort annually.* Proposed unified installation tool for IBM i, AIX, and POWER Linux network installs using VIOS to bootstrap the process. Defined IBM i network install requirements and designed new tool.* Supported organization-wide Agile process adoption effort by aiding in the process selection, advising on tool capabilities, and training developers.* Led a university capstone team and intern in creating a new web client for managing software images.* Trained department to use Scrum (Agile) by convincing stakeholders of its benefits, instructing developers one-on-one, and demonstrating the process on my own team.* Enhanced and maintained business-critical software image management system (C++), its clients (Java, JSPs, EJBs), and OS modules that packaged and automatically installed IBM i systems over the intranet.* Area's (directorate's) top performer in 2009.
  • Ibm
    Software Engineer
    Ibm Jun 2008 - May 2010
    Armonk, New York, Ny, Us
    * Enhanced and extended business-critical software image management system (C++), its clients (Java, JSP, EJB), and OS modules that packaged and network-installed the IBM i OS and middleware (DevOps).* Led team and developed IBM i OS and middleware packaging and release tool (Java); reducing release times by 1-2 months per package and saving 2 person-years of effort annually.* Engineered Java web service to transform and transmit support information to customer distribution centers, resulting in faster dissemination of critical information such as defective fixes.* Supported organization-wide Agile process adoption effort; aiding in process selection, advising on tool capabilities, and training developers (Scrum, TDD, Planning Poker).
  • Michigan State University
    Undergraduate Teaching Assistant
    Michigan State University Jan 2008 - May 2008
    East Lansing, Mi, Us
    Introduction to Programming I (CSE 231)Semester: Spring 2008* Taught and tutored first-year students in Python2 programming.* Led weekly lab sessions consisting of over 25 undergraduate students. During these sessions, I guided students through an exercise to improve their understanding and answered questions related to the homework and exams.* Graded assignments (code inspections) and managed the course website.College Algebra and Trigonometry (MTH 116)Semester: Fall 2007* Led twice-weekly recitation sessions consisting of over 25 undergraduate students. During these sessions, I instructed students using practice problems to reinforce their understanding of the concepts taught in class.* Tutored students both in office hours and at the math learning center.* Graded assignments
  • Ibm
    Co-Op Pre-Professional Programmer
    Ibm May 2007 - Aug 2007
    Armonk, New York, Ny, Us
    * Automated the installation of groups of fixes during lab-system install, saving time by eliminating the need to manually install fixes.* Integrated bug-fix process support system with new requirements management tool (ClearQuest).
  • Ibm
    Co-Op/Intern Programmer
    Ibm May 2006 - Dec 2006
    Armonk, New York, Ny, Us
    * Designed and implemented a Java web service (and modified clients) for guiding developers through the fix process, improving fix quality and eliminating our need for a legacy mainframe system. * Translated prior fix process guidance to work with the new tool. * Generated program specifications from an existing fix tool—using exploratory testing and code examination—to support a web-based re-implementation.* Debugged and repaired the image management system's administrative tool.

Ian De Silva Skills

Kotlin Java C++ Python Junit Eclipse Subversion Clearcase Clearquest Ant Agile Methodologies Rational Team Concert Websphere Application Server Scrum Rational Software Architect Ms Project Aix Ibm Iseries Unix Ile C++ Gnu Make Gdb G++ Shell Scripting Object Oriented Design Algorithms Sql Json Web Services Jsp Android Git Xml Selenium Sonarqube Nusmv Db2 Software Development Operating Systems Software Engineering Computer Science Linux Uml Latex Rest Programming C Bash Swift Testing

Ian De Silva Education Details

  • University Of Minnesota
    University Of Minnesota
    Computer Science
  • University Of Minnesota
    University Of Minnesota
    Computer Science
  • Michigan State University
    Michigan State University
    Computer Science

Frequently Asked Questions about Ian De Silva

What company does Ian De Silva work for?

Ian De Silva works for Target

What is Ian De Silva's role at the current company?

Ian De Silva's current role is Principal Software Engineer at Target.

What is Ian De Silva's email address?

Ian De Silva's email address is de****@****ail.com

What is Ian De Silva's direct phone number?

Ian De Silva's direct phone number is +151741*****

What schools did Ian De Silva attend?

Ian De Silva attended University Of Minnesota, University Of Minnesota, Michigan State University.

What are some of Ian De Silva's interests?

Ian De Silva has interest in Education.

What skills is Ian De Silva known for?

Ian De Silva has skills like Kotlin, Java, C++, Python, Junit, Eclipse, Subversion, Clearcase, Clearquest, Ant, Agile Methodologies, Rational Team Concert.

Free Chrome Extension

Find emails, phones & company data instantly

Find verified emails from LinkedIn profiles
Get direct phone numbers & mobile contacts
Access company data & employee information
Works directly on LinkedIn - no copy/paste needed
Get Chrome Extension - Free

Aero Online

Your AI prospecting assistant

Download 750 million emails and 100 million phone numbers

Access emails and phone numbers of over 750 million business users. Instantly download verified profiles using 20+ filters, including location, job title, company, function, and industry.