Intermediate Software Developer, Domains - Remote
Tucows (NASDAQ:TCX, TSX:TC) is on a mission to make the Internet better by providing people everywhere with online access to be empowered to make individual contributions. As a company, we embrace a people-first philosophy that is rooted in respect, trust, and understanding to encourage freedom, inspire innovation, and promote inclusivity; creating an environment for everyone to thrive!
Tucows has been working on the Internet since the days when people ironically called it the Information Superhighway. We are a 25-year-old global start-up embracing agility and creativity in order to continually seize opportunity for growth. We have evolved from a start-up domain service provider to becoming the second-largest domain wholesaler in the world while expanding our business with Ting, an Internet services company partnering with towns and cities to change what customers expect from their Internet Service Provider. We are building fiber networks across the US and have already launched Gigabit speed service in Maryland, Virginia, North Carolina, Colorado, Idaho and California, laying the groundwork for rapid scale.
Our growth has been incredible, smart, and measured, built on a solid technical and financial foundation. We have doubled our workforce in the last 4 years and continue in rapid expansion mode, providing services to millions of customers around the world.
Even though we’re a pretty large company, we strive to limit bureaucracy and get good ideas off the ground quickly. We believe anyone, at any level in the organization, can bring forward ideas, initiatives and creative input.
That’s where you come in. As an Intermediate Software Engineer, you’ll play a major role in reinventing our core platform, development processes and tools.
We are seeking to hire a keen and self-motivated individual who loves the Internet, and loves learning and applying new technologies to exciting problems.
You have notable experience developing software and are good at using languages like Python to implement features in distributed systems. You are comfortable working at scale on dozens of interdependent components across multiple environments. You are also capable of navigating large codebases and uncovering the complexity in existing systems. You are open to giving and receiving feedback, participating in collaborative design discussions. In addition to the above, you are flexible and able to remain effective when priorities shift.
What you’ll be doing:
First 30 days:
- Join a team that is working on modernizing an indexing solution
- Gain deep understanding of our existing platforms
- Implement small stories and ensure quality through writing automated tests
First 3 months:
- Contribute to technical design and architecture discussions
- Participate in code reviews and ensure that development standards are adhered to
- Design and implement features of increasing complexity
- Share knowledge and act as a trusted mentor to junior team members and coops.
- Implement projects and features from conception to release
- Balance the need to ship code quickly with the need to make sound technical decisions.
Key skills and experience:
- Bachelor degree in Computer Science, Software Engineering or equivalent work experience
- 3+ years professional experience in software development
- Experience building microservices in Python 3
- Experience working with searching and indexing tools (ie. Elasticsearch, Solr)
- Experience with Continuous Integration concepts and tools
- Experience delivering highly available and reliable systems
- Good communication skills, both verbal and written
Nice to have skills and experience:
- Understanding of Perl is a huge plus
- Experience building integrations with 3rd party systems
- Experience building software iteratively using feature flags
- Experience working in an agile environment
- Exposure to multiple programming languages
We believe diversity drives innovation. We are committed to inclusion across race, religion, colour, national origin, gender, sexual orientation, age, marital status, veteran status or disability status. We celebrate multiple approaches and diverse points of view.
We will ensure that individuals with disabilities are provided reasonable accommodation to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please contact us to request accommodation.