Posted in

Sr. Software Developer

Sr. Software Developer

CompanyPTC
LocationSan Ramon, CA, USA
Salary$135000 – $160000
TypeFull-Time
DegreesBachelor’s
Experience LevelSenior

Requirements

  • Bachelor’s Degree in Computer Science or ‘STEM’ Majors (Science, Technology, Engineering and Math)
  • A minimum 5 years of professional work experience
  • Experience with programming languages like ReactJs, JavaScript, Java, Python and ReactNative
  • Experience with front-end development
  • Experience with data modeling
  • Must have practical knowledge and proficiency with native app development for iOS and integrating with RESTful services
  • Must have practical knowledge and proficiency with web app development using REST API
  • Good understanding of git, unit testing and automated testing, continuous integration and deployment
  • Experience with agile development methodology
  • Strong understanding of micro service architecture and application architecture
  • Communication skills for a highly collaborative software development process with distributed teams
  • Passion about new technologies, self-motivated, and commitment to continuously learn and improve
  • User centric design thinking, with a thoughtful approach to building software with new zero learning curve
  • Must be willing to travel
  • Must be willing to work out of an office located in Pleasanton

Responsibilities

  • Capture system level requirements by brainstorming with Dev Leads, Designers and Product Managers
  • Identify the scope of the work, provide initial estimate and justify the estimate with facts
  • Demonstrate the understanding of Agile software development lifecycle and able to distinguish the core inputs and outputs in each cycle
  • Engage in technical discussions; participate in technical designs and present technical ideas through white boarding
  • Work closely with your peers and keep engaging in a fast pace technical design and development team
  • Execute in a fast pace delivery mode and focus in delivering tasks to meet the product release goal
  • Maintain code quality through best practices, unit testing and code quality automation
  • Seek and provide feedback on design and development
  • Demonstrate the ability to make informed technology choices after due diligence and impact assessment
  • Understand whole product, its modules and the interrelationship between them while being an expert in the assigned component or module
  • Help in designing interfaces and information exchange between modules
  • Gain advanced domain knowledge and show great customer focus
  • Expert in processes / methodologies and skilled in build, release & deployment processes
  • Articulate the need for scalability and understand the importance of improving quality through testing
  • Be an expert in writing code that meets standards and delivers the desired functionality using the technology selected for the project
  • Drive design reviews define interfaces between code modules and applies existing technology to designs
  • Be an expert in assessing application performance and optimizing/improving it through design and best coding practices
  • Be an expert in core data structures as well as algorithms and has the ability to implement them using language of choice
  • Mentor other developers in the team, ensure adherence to coding and testing standards
  • Research new technologies, tools and develop proof of concepts as it applies to the product
  • Communicate effectively and consistently with other engineers, customers and management
  • Share technical knowledge and expertise with colleagues

Preferred Qualifications

  • Experience working at a startup or enterprise software
  • Active in open source community
  • Can work well with loosely defined requirements