19 Types Of Robotic Software Engineers

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 ก.พ. 2025

ความคิดเห็น • 68

  • @supersonicstyleatsonicspeed
    @supersonicstyleatsonicspeed 7 หลายเดือนก่อน +11

    I don't think I've ever found such an amazing video regarding Robotics Engineering. Thank you for uploading this video.

  • @ubaydaabdulsamad6468
    @ubaydaabdulsamad6468 7 หลายเดือนก่อน +5

    Thanks a lot for sharing your expertise.
    Software robotics' learning curve is steep and job opportunities are quite few. As much as this topic is important, it's always overlooked.
    As you mentioned, teams are not strictly divided and separated, a team is usually responsible on various related tasks and teams always work together. For example, one company I've worked for has the following teams:
    - mathematics (solves any problem related to math, mostly sensor fusion)
    - AI (anything related to a AI - mostly Computer Vision)
    - Embedded Systems ( programming smaller computation unites mostly sensors)
    - Embedded Systems ( testing new components, mostly drivers)
    - HMI (Software Application)
    You always see people from different teams collaborate on a certain task.

  • @ChaitanyaKrishnabodduluri
    @ChaitanyaKrishnabodduluri ปีที่แล้ว +3

    Thankyou for sharing your insights,Please continue your videos. KUDOS

  • @KamalCarter
    @KamalCarter 7 หลายเดือนก่อน +2

    Karissa, this video was a blast and full of great info. Keep up great work.

  • @moseschuka7572
    @moseschuka7572 หลายเดือนก่อน +1

    May I suggest a video on MUST read books for ROBOTICS and Why. Thanks for your wonderful contents!

  • @Neuroguy100
    @Neuroguy100 7 หลายเดือนก่อน +1

    Thank you for making this gem of a video! Please continue making videos on Robotics and Software Engineering

  • @LoyvanBeek
    @LoyvanBeek 5 หลายเดือนก่อน +5

    Pretty complete indeed. What I'm missing is maybe 'behavior Engineer ', someone who makes sure the robot does the things it's supposed to, handles fallback behaviors in case something fails. This person builds big state machines or behavior trees etc.

    • @karissastisser
      @karissastisser  5 หลายเดือนก่อน +2

      @@LoyvanBeek interesting, thanks for the note! I'm curious what behaviors you're meaning that wouldn't be handled by path planning, manipulation, or human computer interaction? Or are you meaning behaviors at a higher level that handle all of them?

    • @LoyvanBeek
      @LoyvanBeek 5 หลายเดือนก่อน

      @@karissastisser exactly that. Stuff like: get an order from the ordering system, navigate to the pickup point, see where the item to get is exactly, try to make a manipulation plan, grab the item, nav to the drop point, plan for the arm again etc (ech of those steps can fail in various ways). Has been a significant part of my last job, where o made some libraries if bits of behavior that could be composed together to make high level stuff. This stuff gets even harder when human interaction is involved.

    • @karissastisser
      @karissastisser  5 หลายเดือนก่อน +1

      @@LoyvanBeek that makes sense. Robots I've worked on have had each "purpose" like path planning or localization or tracking be completely separate nodes, triggered by a message potentially from another node, so the behavior is handled internally, but I could see it making sense to make the architectural choice to have a separate behavior node that handles the high level behaviors, leveraging functionality within each of the other nodes. Thanks for the feedback! I'll add a note in the description.

    • @georgerossides3910
      @georgerossides3910 3 หลายเดือนก่อน

      Good note from OP. Where you have (correctly imo) added the manipulation stage as Path Planning-> Manipulation-> Actuation Control, there is an intermediary stage, HCI-> Behaviour Optimization/Task Scheduling-> Path Planning. More of a dark art atm than a standardised stage but definitely applicable to generalized, field and cooperative mobile robotics. Some additional notes, this is generally concerned with sequential logic (i.e., what is the optimal set of tasks to be performed and in what order). Like OP said behaviour trees may be applied but also the more advanced Linear Temporal Logic. Another noteworthy differentiation from a cooperative robotics perspective is that Manipulation would deal with decentralised, robot-specific tasks, while behavior control would deal with centralised, overall-system-specific tasks like (task allocation and event scheduling). P.S. your list should be published and standardized 😁

  • @PeerasChannel
    @PeerasChannel 2 หลายเดือนก่อน

    Your video is super useful and it's quite important for those who want to know how to get into the world of robotics based on their expertise.

  • @CodeMechanicsPhD
    @CodeMechanicsPhD 22 วันที่ผ่านมา

    This is super helpful! I wish I had seen this 2 years ago 😂

  • @RobotixwithSina
    @RobotixwithSina 9 หลายเดือนก่อน +1

    Thanks for sharing this with us Karissa. Very informative video.

  • @420_gunna
    @420_gunna ปีที่แล้ว

    Awesome video. I'm not even in Robotics but watched it end to end instead of working. Great presentation! I hope you continue making these videos - I'm not sure that I have any advice re: how to increase viewership, if that's a goal :) But the content's there.

  • @alexlarson2466
    @alexlarson2466 5 หลายเดือนก่อน

    It really is incredible what it takes to develop modern mechatronic systems and robotics. I'm a mechanical engineer- so other than the controls part, which I partially understand, I never really realized how many sub-branches are within the software portion of robotics engineering as a whole. Same with cars and aircraft- the amount of software engineers needed on modern cars and vehicles is also insane. It makes sense you mentioned controls engineering being simpler generally than other subfields of software engineering in robotics. That's what I felt with the controls topics we dabbled into in mechanical engineering school vs. me trying to get a 2nd BS in CS, which didn't last, as I quickly discovered it got way more in depth quickly and went so far beyond mechatronic controls. I dropped CS like a hot potato, went back to ME haha

  • @rishabhsivarajan
    @rishabhsivarajan 10 หลายเดือนก่อน +1

    Absolutely loved this video! It's incredibly informative and valuable for those trying to specialize in the robotics software department. Thank you so much for sharing your expertise

  • @erniea5843
    @erniea5843 5 หลายเดือนก่อน

    Inspirational, thank you for going through these

  • @marrom6808
    @marrom6808 ปีที่แล้ว +2

    Make milestones for your videos, so people can skip ahead; i.e. 3:30: Mapping. People might stick around longer if they can easily skip to which portion they want.

    • @karissastisser
      @karissastisser  ปีที่แล้ว +6

      Thanks for the suggestion, I think they're added now. Thanks for watching!

  • @MykelOkuboyejo
    @MykelOkuboyejo 7 หลายเดือนก่อน

    Really helpful. Thanks for putting this together. Video topic suggestion: Books, Courses or a study plan for building skills in robotics software engineering

    • @CodeMechanicsPhD
      @CodeMechanicsPhD 22 วันที่ผ่านมา

      Is there a particular part of robotics software engineering that you're most interested in? It's hard to build a study plan without having a focused goal since there are so many different avenues in robotics software.

  • @hats-k2z
    @hats-k2z 2 หลายเดือนก่อน

    Wow thats a lot, thanks

  • @rawjuiceandherbs8673
    @rawjuiceandherbs8673 3 หลายเดือนก่อน

    Great vid

  • @harshilaron
    @harshilaron หลายเดือนก่อน +2

    I have a question like I have started building projects in ROS2 with python(bcz of its simple syntax) but then why as robotics software engineer we need to know two programming languages i.e. Python and C++ both have their pros and cons like python is slow and have user friendly syntax where as C++ is fast and have complicated syntax and we can do DSA in any language we want so the problem is whether should I learn C++ as I know the fundamentals of it

    • @karissastisser
      @karissastisser  หลายเดือนก่อน +2

      Yes, it is important to learn C++ for a few reasons. Many companies in industry are using it, so if you don't know C++, there's a good chance you won't get the Job. They're using it because you're able to make code run faster. I'm complex systems like autonomous systems running fast code is really important to avoid any type of collisions. Also, many useful libraries are already implemented in C++ that are useful, like Ceres. The biggest reason is Python just doesn't run and process fast enough for real time critical or complex systems.

    • @harshilaron
      @harshilaron หลายเดือนก่อน +1

      ​@@karissastisser Thank you for the advice

  • @wilsonlysford5268
    @wilsonlysford5268 13 วันที่ผ่านมา

    As a Robotics engineer I feel like you do a handful of each of these at once. Some days I focus on path planning. Others I maybe implementing simulation features and other days I may be working on controls. Learn C, Simulink, Matlab and Python. (Edited to correct Matlab spelling)

    • @karissastisser
      @karissastisser  13 วันที่ผ่านมา

      @@wilsonlysford5268 interesting, where do you work? What size company at what stage is it?

    • @wilsonlysford5268
      @wilsonlysford5268 12 วันที่ผ่านมา

      ⁠@@karissastisserI work at a larger company that is well established but is working towards developing mobile robotics of their own in their sector. I would consider my role Guidance and Controls. Previously I worked GNC at a defense contractor on Autonomous Aircraft.

  • @llyr_
    @llyr_ 26 วันที่ผ่านมา +1

    I’m into marine robotics and want a career with a 50-50 mix of fieldwork and office work, exploring the unknown (like deep-sea mapping or navigation). Should I focus on ROV/AUV operation, SLAM engineering, or something else? Any advice is appreciated!

    • @karissastisser
      @karissastisser  25 วันที่ผ่านมา +1

      @@llyr_ Marine robotics is a fascinating topic! What I would suggest, as this is very specific, look for the top 3-5 companies that you'd like to work for based on location, and look at the capabilities of those robots and potentially where the company is heading. Some will have autonomous movement, but others will have remote movement with sensing capabilities. I would try to pick a topic that is represented in the companies you'd like to work for, then try to create a project. Finding a dataset may be challenging, but it looks like there's a ntnu-arl/underwater-datasets repo you may be able to leverage. 3D map reconstruction using sonar data would be what would interest me, but I don't know how prevalent in industry that is as it's somewhat niche, and the sensor is expensive. Good luck!

  • @Nallu_Swami
    @Nallu_Swami 7 หลายเดือนก่อน

    This is so helpful

  • @krishnakanthajith2350
    @krishnakanthajith2350 ปีที่แล้ว +2

    Really didnt feel like a 46 min video just wow.

  • @ripsky7586
    @ripsky7586 7 หลายเดือนก่อน

    Would you recommend studying ce over cs for robotics software engineering? This way you understand the hardware, physics, and maths. Also, I saw a video where they use a exoskeleton to manual create "data" doing a certain task. And use that to train the robot, like how chatgpt is trained on data. How could an individual get into a job like that?

    • @karissastisser
      @karissastisser  6 หลายเดือนก่อน +2

      It's a good question, I'm biased towards CS as that's what I did and found it really useful. If you do CE, you'll likely be stronger in the areas you mentioned but weaker at some of the CS concepts, and vice versa. For instance, for CS you'll want to be strong at threading, design patterns, debugging, object oriented class architecture, etc. You don't want spaghetti code if you don't spend enough time on CS. I would recommend focusing on which areas either you need to be stronger or the areas you feel like you'll need more help learning. You can always learn the other on the side. Also, certain jobs need you to be stronger like controls or pathplanning needs to be strong in physics, executor and any architecture/algorithm writing needs to be strong in CS. So, pick what suits you best

  • @marvetoons1625
    @marvetoons1625 15 วันที่ผ่านมา

    If I want to learn towards the Control Engineering part what tools and skills do I need to learn?

    • @karissastisser
      @karissastisser  15 วันที่ผ่านมา

      @marvetoons1625 I'd have to say Graham have some good recommendations when I posted this on LinkedIn for a map of skills:
      engineeringmedia.com/map-of-control
      I would also recommend the TH-cam channel James Bruton's channel and Steve Brunton's channel.
      You'll likely need C++, physics, mechanical and electrical theory, and math like linear and nonlinear algebra, PDEs, and modeling/design. Controls has not been my focus, so admittedly I still have plenty to learn myself there, but hopefully that helps and I wish you luck!

  • @Dhananjay-IITBHILAI
    @Dhananjay-IITBHILAI 6 หลายเดือนก่อน

    Please make video on guidance for career in robotics

    • @karissastisser
      @karissastisser  6 หลายเดือนก่อน

      @@Dhananjay-IITBHILAI what is cariour?

    • @Dhananjay-IITBHILAI
      @Dhananjay-IITBHILAI 6 หลายเดือนก่อน

      @@karissastisser I am really sorry I didn't notice it was misspelled.

  • @gabrielaforerocardenas8498
    @gabrielaforerocardenas8498 ปีที่แล้ว

    Hi🎉 Tengo el presentimiento de que voy a amar tu canal

  • @harshilaron
    @harshilaron 2 หลายเดือนก่อน +1

    is DSA(Data Structures and Algorithm) important as a Robotics Software Engineer like doing DSA questions on LeetCode , HackerRank ?

    • @karissastisser
      @karissastisser  2 หลายเดือนก่อน +1

      @@harshilaron yes, absolutely! You'll frequently have to put together algorithms yourself using data structures, and the better you know data structures and how to write your algorithm optimally, the better algorithms you'll have. Some of the standard algorithms you'll never write because they're already implemented in the standard libraries, like sort or search, but understanding the concepts helps you write nonstandard algorithms. I have a board game I invented and sell that highlights data structure concepts. I'll have a video on this soon, so stay tuned! Also look into design patterns!

    • @harshilaron
      @harshilaron 2 หลายเดือนก่อน +1

      @@karissastisser ok Thank you for the valuable advice

  • @vladkuz6974
    @vladkuz6974 10 ชั่วโมงที่ผ่านมา

    Can you get into robotics as an ML/MLOps engineer who doesn't really know much about hardware?

    • @karissastisser
      @karissastisser  9 ชั่วโมงที่ผ่านมา

      @@vladkuz6974 yes, there is definitely a need for strong ML/MLOps engineers in robotics, in some cases it can be helpful to know about the hardware, but it many cases it's not necessary

  • @quoit99training83
    @quoit99training83 ปีที่แล้ว

    What courses I need to take to land job as robotics engineer? Are udacity nanodegrees worth the hype?

    • @karissastisser
      @karissastisser  ปีที่แล้ว +1

      Which of the 19 types are you most interested in? The point of the video is you can focus on what's necessary for one job rather than all of them, so it's hard to answer without knowing your focus. I've never done Udacity, but have had a great experience with Coursera, which can be free. You get what you put into it, especially in regards to projects.

  • @undeadpresident
    @undeadpresident 5 หลายเดือนก่อน

    How feasible is just using C for the things you mention using C++ for?

    • @karissastisser
      @karissastisser  5 หลายเดือนก่อน +1

      @@undeadpresident I feel like that would be really painful. There are a lot of libraries that are leveraged that are already optimized in C++, object oriented code allows for much more complex and organized architectures, and large code bases get complex. I would not want to attempt it. Best of luck!

    • @undeadpresident
      @undeadpresident 5 หลายเดือนก่อน +1

      @@karissastisser Thank you. I hope you don't mind me asking one more question.
      Are the kinds of libraries you must use more like sets of tools, or are they comprehensive interfaces with their own abstractions that you have to memorize and always work with?
      I ask this because the most painful thing I've dealt with since I began programming is OpenGL
      I have little difficulty creating my own functions for things like 3d transformations, pathfinding, physics etc while doing game development, but the structure of OpenGL is such that everything must be specific to it's structure.
      Simply sending data to the GPU can turn into an ordeal because it must be done in very specific ways that require reading pages of documentation about the intricacies of the API.
      This is due to it being an comprehensive interface that you have to adapt everything to.

    • @karissastisser
      @karissastisser  5 หลายเดือนก่อน +1

      @@undeadpresident it depends on the library. You choose a library based on the functionality it provides. Someone else has developed the libraries you are trying to use. Sometimes they have wildly different styles of coding. Sometimes they provide good documentation and sometimes they don't. You are using someone else's code, so you are accepting whatever they've made and need to figure out how to work with it. Eigen comes to mind as a difficult library to work with syntactically, but provides a lot. Good luck!

    • @undeadpresident
      @undeadpresident 5 หลายเดือนก่อน

      @@karissastisser thank you

  • @mohitsethi-w7k
    @mohitsethi-w7k 3 หลายเดือนก่อน

    whattt? only 465 likes?? 😲

  • @mustaphaalhassan9738
    @mustaphaalhassan9738 หลายเดือนก่อน

    what about computer vision?

    • @karissastisser
      @karissastisser  หลายเดือนก่อน

      Yes, Computer Vision is highly used in Perception tasks, multi target tracking tasks, manipulation tasks, and sometimes SLAM if you're using visual SLAM.

  • @TerragonAI
    @TerragonAI 2 หลายเดือนก่อน

    Python & ROS ❤😅

    • @karissastisser
      @karissastisser  หลายเดือนก่อน +1

      It's a great way for some people to start, but not the end goal as most production code is C++, though I've seen a variety of languages across companies.

    • @TerragonAI
      @TerragonAI หลายเดือนก่อน

      @@karissastisser Yes 🙂There’s no denying that C++ is the go-to language in a lot of production robot software, especially for performance-critical components. But Python still has a lot going for it-especially in the rapid prototyping and algorithm exploration phases. It’s super handy for quickly spinning up scripts and testing out ideas, and, with ROS, Python nodes can integrate pretty seamlessly alongside C++ nodes... and.. i only know python ...

  • @surajmandal_567
    @surajmandal_567 9 หลายเดือนก่อน

    Where to learn these 😢?

    • @karissastisser
      @karissastisser  9 หลายเดือนก่อน

      Implementing projects were my best form of learning. Search what you don't know. I have a few products at Slamivait I'm working on to help this, but it'll take some time to complete. Feel free to subscribe to my newsletter on slamivait.com to be notified of new products. This also sounds like a video request for a roadmap. Which type of job interests you most?

  • @karlmoreno4109
    @karlmoreno4109 ปีที่แล้ว +1

    Can you add chapters to the video?

    • @karissastisser
      @karissastisser  ปีที่แล้ว +1

      Yes, first time, I believe I added them, let me know if you still have an issue, thanks for watching!

  • @Edward-qx9lb
    @Edward-qx9lb ปีที่แล้ว

    Promo SM ❤️

  • @Baller1412
    @Baller1412 หลายเดือนก่อน

    what's her ig?

    • @karissastisser
      @karissastisser  หลายเดือนก่อน +1

      @slamivait, based on my company name. I just updated descriptions of videos so anyone can connect or follow via Instagram, Linkedin, Patreon, or check out my company website. I'm fairly new on Instagram and Patreon, but will continue to post over time. Thanks for watching!