Open UltronDestroyer opened 10 years ago
Couple of ideas @toxicseaweed.
Personnel to ramp up things:
Newbie Trainer Software Engineer ->Train noobs on how the software works/how it looks/how the architecture is ->Train noobs on improving their C++/Python/Scripting/Hacking skills ->Answer questions noobies might have ->Train noobs on ROS, catkin, building, and testing
Simulator Software Engineer Duties: ->Keep URDF up to date ->Assure the model works/runs smoothly in RViz and Gazebo ->Write transmissions/actuations in the URDF ->Test the new code written for the robot and assure the simulation doesn't break (and if it does, work with others to fix it) ->Make videos of simulation demonstrating robots capabilities
Software Test Engineer: Duties: ->Write tests for code being written ->Document the test code ->Fix bugs that arise from testing ->Test code for the existing code
Code Standards and Specifications Enforcer Duties: ->Enforce specs of the code that is written and re-write it if not up to spec e.g. for protocols on communicating with hardware, how emergency stops should be executed, how communications with drivers works. ->Document specifications, give feedback on specs ->Work with other engineers to assure their products meet the specs
Software/Hardware Driver maintenance engineer Duties: ->Write tests to assure hardware operates properly ->Tests to assure the interface for software is working ->Runtime checking that everything is going to plan ->Find better solutions/optimize driver code for current software ->Write driver code for new software/new hardware
Website Admin ->Keeping the website up to @Home standards and specs ->Updating the website for new team members ->Updating the info on the website for research/project completions and time lines
Social Media Publisher ->Keep the facebook/twitter/website page up to date with development updates ->Stay in touch with editors/UBC news paper/reporters and keep them informed about progress ->Post pictures/take pictures of the project and events/make it seem exciting
I really like some of those ideas. I'd see people taking on a couple roles at a time - such is life - but I like having stuff specified and it'd help give new members direction on what to work on. I think finding a way to direct new software members will be important and this is a great step in that direction.
Even though a QA like position does make sense it's important that people writing new components don't skip smoke testing.