Universal Robots

Software Engineer

In progress...

Student Worker - Software Engineer

My work with Universal Robots started in 2021, when I was hired as a student worker. I was hired to work on the PolyScope X project, which is a new version of the software that runs on the Universal Robots robots. PolyScope X is built using Angular, TypeScript, RxJS, NgRx, SCSS and Git and is the software serving the user interface for the robots. PolyScope X is a complete rewrite of the existing software, which is built using Java. PolyScope X is built using a micro frontend architecture, specifically defined as URCaps which allows 3rd party developers to develop their own applications for the robots.

My Work

  • Development of features for PolyScope X e.g. an input dialog.
  • Development of the URCaps SDK, which is the SDK used by 3rd party developers to develop their own applications for the robots.
  • Unit tests using Jest.
  • End-to-end tests using Cypress.
  • Development of a CI/CD pipeline using Jenkins.
  • General bug fixing.

Engineering Intern - Control Systems

During my internship, I aimed to grow both professionally and personally, setting specific goals to enhance communication, problem-solving, and time management skills. Through a series of targeted objectives, I strived to become more adept at collaborating effectively, handling tasks efficiently, and leading solutions in robotics-related domains.

My Work

  • Torque Window Solution
    • Addressed customer issue with small torque windows in a robot configuration.
    • Implemented embedded C and controller C++ code for adjusting torque windows, improving performance and efficiency.
  • Code Refactoring for Configurations
    • Centralized specific configurations, reducing code complexity.
    • Enhanced code maintainability and readability for easier modifications.
  • Investigation of Integration Test Failures
    • Analyzed test results and debugged code to identify failures' root causes.
    • Provided insights leading to effective issue resolution and improved test stability.
  • Code Linting Caching Solution
    • Developed a caching solution for code linting in CI pipelines.
    • Reduced linting time from ~25 to ~5 minutes, enhancing overall pipeline efficiency.
  • Enhanced Power Usage Algorithm
    • Implemented a faster and conservative power usage calculation algorithm.
    • Improved power supply performance and reliability in driving the robot.
  • Simulated Robot & Joint Controller Bridge Development
    • Created a communication bridge between simulated robot and joint controller.
    • Demonstrated feasibility for future integration and development.
  • Additional Contributions
    • Resolved various bugs and handled smaller assignments, honing technical skills and problem-solving abilities.

This internship allowed for practical experience in software development, embedded systems, debugging, optimization, and integration within robotics technology, offering valuable insights into its complexities.

Goals and Objectives

  • Effectively improved communication and presentation skills through well-prepared talks and PowerPoint presentations.
  • Embraced a proactive approach by consistently asking for clarification when uncertain, fostering a more open work environment.
  • Enhanced time management by evaluating task priorities and staying prepared for meetings, optimizing productivity.
  • Spearheaded solutions in robotics-related areas, showcasing problem-solving abilities and technical expertise.
  • Developed a structured approach to task breakdown, ensuring efficient progress and learning from various attempts.

Additional Learning

  • Gained proficiency in embedded C and improved task-switching capabilities, adapting to diverse tasks.
  • Expanded teaching abilities by mentoring and supporting colleagues, fostering an open knowledge-sharing environment.
  • Managed high-pressure situations by strategically addressing simultaneous assignments, emphasizing task assessment before commitment.

Was this document helpful to you?
Provide feedback

Last edited on April 22, 2024.
Edit this page

GuldbergGuldberg

This website is built using Next.js,Tailwind CSS,
Contentlayer, and is hosted on Vercel.

Made with ❤️ by @andreasgdp